I think the Levels Training at http://www.dragonflyllama.com is very good. With my adults that pull, we started by working in a park on a long line. We would get their attention and ever time they came next to us, click and treat, or "good dog" and treat. It didn't take too long to figure out that staying near us got them the treats. Once they got the hang of that we put on the standard 6 foot lead and started rewarding loose leash and not rewarding a tight leash, which means not moving forward. Over the past 2 years we have reached a point where they for the most part walk on a loose leash except when they are very excited, like they see cat, the lure, or something else that really works them up. Loose leash is something we work on all the time but they really do get better with consistency.
With a young puppy it is actually easier because their natural inclination is to follow near you so I reward that heavily and it seems to be working.