Add projectiles

This required adding a second canvas for objects that need to be drawn more frequently.
Lighting support was also tightened up.
Support for mouse events were added.