Change default material to be textured
Move camera position handling into an internal Entity

This step will help reduce any duplication of logic when dealing with
positioning / rotation etc in the world, and opens up the ability to
hook up components to this Camera, such as Input
Hide LookAt logic behind methods instead of direct access

Making this change more to make the Camera API more consistent with the
new Position change. Will probably change Up as well. I also foresee
giving the Transform component the LookAt method as making entities
look at things is not uncommon.
Stop panic-ing on resources not found

Instead I'll just put up a log message. It would most likely be the
correct move to start returning errors but this panicing is making the
tests annoying with the default material loading failing, so I don't
want to deal with it anymore.
Fix graphical test with updated Camera API
Query the open window for its current aspect ratio
Store recent input events that will be retrieved each frame.

Input handling via Components needs to be under more control than
throwing out random callbacks. InputDispatcher (renamed from
InputMapper) still supports direct callbacks for the times that I want
events handled outside of an Entity context.

The upcoming Input behavior will use the stored events list to process
components and entities that want to react to input events.
Rename InputDispatcher file and set up an InputQueue interface

Any input tool to be used with the Input behavior needs to implement the
InputQueue interface, which is simply a method to return the list of
events that have happened since the last call.
Implement Input Components and Behavior

Input components hold a map of EvenType -> callback that gets called
during the input processing step. The setup supports any number of a
given event, and any number of events (in reality this should be very
small), per frame.
Remove unused file and add some docs to helper_test
Only move the cube on key-down events