Default init function, because apparently entities might not want to init themselves
Trigger on use, triggers can only happen once per frame

This prevents multiple triggers associated with the same
character in the level file from triggering at the same time.
For example, if 2 triggers are associated with "a", and both
want to be activated on use key pressed, originally both
would have triggered the function on that frame. Now only
one will trigger the function on the frame the use key is
pressed.
Fix crash due to not refactoring proximity once trigger
Actually run the Lua GC every so often.
Only look for player or trigger collisions

If all entities are compared against each other,
even with only the few walls in the test level,
it takes >30ms per frame. This not only slows
the game down, but prevents the main loop from
running GC steps. (which causes Lua to start
gobbling up an unbounded amount of memory
very, very fast)
Guarantee at least one step of GC per frame when needed
Only mark GC as finished when collectgarbage says it is
Embed layer into Entity
Better removeEntity
Commented measurement of findCollision time
Use removeEntity rather than deleting from _name2ent directly
Engine support for glyph rendering

Caches all the glyphs and glyph data needed to
render text. Also provides a way to render lines of
text easily.
Add various fonts that are cached for line rendering
Bug fix for trigger from use key
More SDL_TTF functions wrapped for Lua use