If you find post-processing to retrieve those "less than optimum" photos a time consuming challenge with Photoshop or GIMP have a look at LightZone 3.9.

A trial version can be downloaded from http://www.lightcrafts.com/lightzone/, it's relatively inexpensive, handles RAW for many cameras and all in all I find it to be a pretty neat application.

A comprehensive set of video tutorials demonstrating its ability is available here http://www.lightcrafts.com/learning/index.html.

I mainly use PS Elements 7 (because that's what I've been using for years) but if the shot is proving difficult to rectify I switch to LightZone (it integrates and is available as an editor inside Elements) as it's much easier to make complex adjustments.