I've been using Clarins Golden Glow Booster ($30) morning and night, mixing 3 drops with my moisturizer. This product is a liquid bronzer designed to be added to moisturizer. You're technically supposed to use a Clarins moisturizer but I mix it with my Kiehl's Ultra Facial Cream and it works perfectly. It's 99.8% natural and doesn't have that yucky smell that most self-tanners have. I find being tanner blurs your imperfections a bit more eliminating the need for much foundation.
For my body, I exfoliate and moisturize head to toe, and let the lotion sink in for at least an hour before rubbing in Banana Boat Summer Color Self-Tanning Lotion (around $10 @ Target - the only place I could find it.) I use the deep dark tan for my medium skin tone. Color develops in 3-4 hours. I don't get any rub-off from it and while it does have a slight yucky smell, it's not awful. There was no streaking at all.
If you don't want the color to be too deep you can dilute it with some of your lotion for a gradual tan effect. It's a good idea to use the lotion and tanner combo on your elbows, knees, ankles, and feet since those areas tend to get darker than others. Some people recommend using a glove to apply so your hands don't get stained, but if you work quickly (within 5 minutes) and wash your hands with soap and water afterward your palms will not get stained.
Both of these products are very highly rated in the beauty community. I am thoroughly sold. I actually don't think I've ever used a body tanner before but everyone looks better with a tan, so why not? It's obviously better for your skin to use a fake tan and then slather yourself in sunblock to prevent any damage.
To prolong your tan, keep your skin moisturized and exfoliate every 3 days so that as the tan wears off there are no spots.