BUGS
----
*** FIXED - watch those babies flock0r! 
The ufo's can overlap each other.  I don't really have a problem with this,
but I can see how other people would.  Trying to keep Ufo::Pilot() simple for
the moment.  Maybe some neat-o flocking-ish algorithm in the future.

Visual::LoadTexture(char*) goes ahead and feeds OpenGL textures which aren't
power-of-two dimensioned.  OpenGL spits out a GL_INVALID_VALUE error, but
works perfectly (nvidia drivers).  This almost certainly isn't portable.  
LoadTexture ought to increase the dimensions to 2^x and feed back texture 
coordinates (from Visual::UseTexture?).

*** WORKED AROUND - Don't use arrows for gameplay
Events in Menu invoked in-game interfere with gameplay event state.
EG: hold down keys_forward while pressing esc, and then release it while menu.
unSolution:  have Menu feed back all events that it doesn't use, and tell the 
user not to map keys in game overlapping menu keys?

*** WORKED AROUND - Player::Collide() twice.
One can wiggle out of the corners of the arena - the collision detection sees a collision with the side to your side, and then stops looking, so doesn't stop 
you going through the side ahead of you.

Defficiency in moving sphere collision detection (Arena::Collide(Vector,Vector,
float)) leads to up to half of player going through the corners of obstacles.
In this situation, because Arena::Blocked is true for Player, the Camera
cannot position itself properly, and can end up going inside the scenery.

*** IRRELEVANT: windows have become unresizable */
The texturing system appears to go for a burton if:
	run with -bpp 16
	ungrab mouse, resize window
I haven't looked into it - people running in 16 bit are just going to have 
to live without resizing their windows.

...and much, much more!
