I cannot reccomend this highly enough, if you can find it that is.
http://www.uoregon.edu/~splat/Am…