We have recently started using a new method at the puppy classes I help at, which is proving very effective.
Step 1. Have a clicker and a handful of treats.... attach lead to collar - lead should be in a nice "J" shape (so completely loose, hanging down).
Decide which side you want dog to walk on (eventually) - if you want him on your left, hold everything in your right hand (lead over wrist, clicker and handful of treats in hand) - use your left hand to retrieve one treat at a time after clicking.
Have dog infront of you, step backwards - if he chooses to follow, click and treat.... repeat many many times.
Step 2. Once he has the hang of following you, do 2-3 steps backwards (clicking and treating), then turn, so that dog is in a heel position on your left - click and treat. Then return to being infront of dog and repeat this stage many many times.
Step 3. Short walks on lead in a low distraction environment - Literally just about 10 metres at first - and you should be getting at least 10 click/treats into those 10 metres - try not to click/treat absolutely regularly, so allow one slightly longer gap at some point, so dog has to keep concentrating on you. In the initial stages you will be click/treating virtually constantly - don't progress too quickly, as one of the main issues people have with clicker training loose lead walking is that the dog walks nicely, grabs the treat and then pulls ahead - if you are click/treating often enough there shouldn't be time.
Step 4. Gradually build up on this - so slightly longer between rewards in the same environment, introduce more distractions (with a high pace of reward), keep it going for longer.... don't build too quickly - and if you are taking it to a new environment, initially go right back to step one to build those foundations (you shouldn't need to repeat them as often). I think the major reason people struggle with loose lead walking (and I do - we use a T-Touch harness) is that they do the basics, and then jump to wanting perfect walking, missing out the middle steps of strengthening the behaviour.
If at any point the lead pulls tight, just stop and wait for dog to look at you - if he's utterly distracted, make some noise to attract his attention (but don't just keep repeating his name!).
Make sure you give constant feedback - especially when you are fading out the treats - tell him how clever he is constantly.
It's hard work - and can take months to perfect - but it's worth it!!!
While training is in progress, never ever let him pull on her collar and lead - if you are going somewhere and can't keep to the training, use a harness (or drive and let her off-lead immediately). The harness won't necessarily stop him pulling, but it will stop him learning that he can pull on the collar.
Also never pull the dog - the rule is that the lead must be in a "J" shape - it doesn't matter who does the pulling, this still breaks the rule!!!
I wouldn't use a slip lead on a dog who pulled, especially not a young dog, as it can damage delicate neck muscles if it tightens suddenly... I do use a slip lead for convenience for agility etc, where I want to be able to get the lead on and off quickly, but I use a harness for normal walking so that Honey doesn't have to walk to perfect heel throughout and is free to sniff a little on our way to the woods. We also keep up loose lead walking on a collar and lead when training.
