Handle excessively large delta times during step.

* When a tab is defocused, it can accrue a large delta time once focus returns.
  This is bad for collisions against AI.
Added an AI that bounces off the walls.
Extracted collision offset detection into the collision handler. Now everyone can use it!