JHU Programming Assignment 2