Lots of changes.

Created a Collision manager.
Callbacks are specified based on a pair of keys. The keys represent the
types of objects which are colliding. All collidable objects must have a
coll_class for it to work.

I don't feel great about how this works.. but it does for now?

Fixed a lot of the motion problems for the hero. It is still glitchy
particularly when landing while moving horizontally. If it hits certain
spots it will stop moving sideways.. not sure how best to resolve this.

Added a "bullet" launcher thing
Updated current build