Programming Assignment 2 completed on 5/23/2014 by James D. Beck