csci306 fall2012 final project; given to me by Rader for review to learn how to read other people's code and reuse to make my own project