Programming assignment 2, completed code.