Finishing Programming Assignment 2