Experiments in building the foundations of a 2d canvas game engine.