Implement opengl rendering

This is a large, complicated change.

It is known to break the following things, but it is important
enough that we proceed with it anyway:

* flat shading with wireframe outline
* wireframe with black_tris
* bright line wireframe
* dotted lines in a liine mesh
* nav trident isn't colored by depth
* Derelict objects show up as gray silhouettes (probably due
	to incorrect normals, mesh_derelict() needs attention.)
* Skybox is broken
* Probably other things not on this list are also broken.

Signed-off-by:  Stephen M. Cameron <stephenmcameron@gmail.com>