Final Project for CS263C, Fall 2013 at UCLA