Final project for URI CSC212, Apr 2014