Often it is the small details that make a good picture into a great one. In general I favor in the 'in camera' camp when it comes to digital photography (i.e. no cropping, very little color adjustments, no freaky effects, etc.), but there are things that cannot be done without the use of post production. Whitening the teeth of subject is one of them, and quite a simple one. Yes, one could argue that a photography should about capturing reality, but when you have a paying customer who couldn't care less about your artistic aspirations, following their lead is the way to getting more clients.
As mentioned, the operations are quite simple. Pretty much all software allows localized adjustments for saturation and brightness, and they will be your best help. What I have done so far with great results is to desaturatize the teeth, and then to make them a little brighter. I usually do not unsaturize them completely as it looks unnatural, and be careful with the brightening, you do not want your subject to look like Ross or that politician whose poster hangs near my building: I get blinded every time.
On the topic of post editing software, a lot of the free ones will do what the common mortal needs. I have used Irfanview and GIMP before with great results. I'm sure there are others out there, and they are probably as efficient. I use Aperture for most of my work, and sometimes turn on Photoshop, especially when I need to frame pictures or make multilayer shots. I imagine that PS can do most of what Aperture can, but haven't gotten used to the first one, I use it all the time. Coming back to the teeth, I guess one could create a separate layer for the teeth before doing the adjustments, but it seems like a lot of trouble for extremely similar results.
As I've said, I'm in the 'in camera' camp, and I like to KISS my post editing. But that's just my thing, I have seen some heavily produced shot, which left somewhat the realm of 'true photography, but that looked awesome anyways as images. To each his own.