http://googlecode.blogspot.com/2011/05/creating-2d-games-with-javascript-html5.html