Final Project for CSCI E-55, Harvard University E.S. 2013