CMPSC 130A - Programming Assignment 2