First version of Programming Assignment 2