Just an old college project we found and felt like sharing.  Considering a mobile release if anyone is interested.