Add support for logging state transitions to ludum.js
Use the state transition logging I just added.
Add an obstacle-checking callback to the FPSControls.
Some real game logic!

- Enemies are spawned at random locations.
- In theory they can shoot at you and you can shoot at them
- In practice...? Kinda...
Fix the canShoot and isShooting checks

Also fixed some typos (using subtractVectors, where it should have
been subVectors) and added some logging for when you/they fire.
Fix case where RaySphereIntersector.intersect returned a bool instead of a number
Get rid of the pointer lock code from ludum.js

It wasn't working anyway.
Add more logging for shootouts.