A starting point for JS games, taken from the nice ideas in JS Boulderdash: https://github.com/jakesgordon/javascript-boulderdash/blob/master/boulderdash.js
- independent Game and Render loop
- event-based comms between Game and Render
- "invalidation" model for selective rendering