Final Java project for URI/CSC211, Nov 2013