Game tile map cleanup and typing.
Fix issue where defaults were not applied to SceneObject if no constructor arguments were passed.
Give game components cached access to GameTileMap.
Ensure movable component beginMove function is invoked with proper this.
Don't require "Features" object layer for maps.  What about maps that have no features?  Just give them an empty array.
Add scene.componentsByType that searches all objects in the scene for components of a given type, and returns the component instances.
Disconnect object components when host is destroyed.
Track isEntered boolean on TileComponent instances.  Useful for determing entered state outside of the enter/exit functions.
Another rework of game components.   Continue to work on State machine component for combat system.

Add simple Combat feature component that paralyzes the player for a second, then destroys the host monster and allows the player to begin moving freely again.