Supporting chaining in more classes
New IntKey and Key2 now has chaining
Added entity templates, which will be useful for creating / killing entities on the fly
Added a rock to the tileset which will be used as an enemy projectile soon
New heading component and lots of resetComponent cleanup
Projectiles are now working!
Minor vector simplification
Minor vector simplification part 2
Collisions with enemy projectiles is working
Angles can now be chained and have add/subtract methods
Tweaked the player's "take damage" settings for a better feel.

- Paralyzed time is shorter, invincibility time is longer
- You no longer have to touch the screen to move
- Changing direction is stickier now, so there's less popping between animations
Enemies now hurt the player too
Added the ability to remove recent items from a pool, as well as marking and unmarking one.
EntityManager now guards against multiple calls to "free" during an update cycle
New LifetimeComponent, which kills an object after a certain amount of time passes.
Renamed revertCollision
CollisionSystem cleanup: Added 'fireReverted' method to Collider
Updated mark logic, in an attept to be less heavyweight, since profiling showed that creating an IntStack cost more than it saved
New getTop/Bottom/Left/Right methods in Shape
Now reusing variable for boulder bounds