This is the final project for CS 109 at Harvard University.