This is an explanation of the basic idea of a ladder: http://www.greencourtsoftware.com/essays/clguide.html.
Basically, you can start a ladder by ordering people based on previous league results. You move up the ladder by beating people above you. The specifics can vary, but typically you can only challenge someone within X spots higher than yourself. If the lower player wins, they move up. In some versions they might swap spots on the ladder. To make it harder to climb, you can simply advance winners by 1 or 2 spots, and drop losers by the same. This is probably more appropriate for 15 minute hockey games - a single game doesn't tell you much about who is better. It should be calibrated so that you would have to beat someone fairly consistently to get past them. Lots of ways to do it.
Imagine a 50 team ladder, where you can challenge up to 20% (10 spots) ahead of you, with winners rising 2 and losers dropping 2 spots. If you then challenge the guy 10 spots ahead, and beat him solidly (4 out of 6), you would rise 4 and he would drop 4. So over the time of about a playoff series, you could pass him or get close to him depending on how often you were winning. Sounds about right - keeps the ladder pretty fluid but it takes time to make your name.
What ends up happening is a very natural ordering of the players in a short period of time. It's cool to be able to look at where you stand, and who is close to you, and be able to schedule a game that you know is going to be very competitive.