Bit the bullet and started implementing the batch renderer.

This renderer is necessary in order to get tests running for Spire.
Spire's tests will be using a synchronous test harness and require that
there be an active OpenGL context.

I considered building an OpenGL mock, but that is too much work for too
little gain.