Our verts buffer can be GL_SHORT as it only contains integral values.

We could even do GL_UNSIGNED_BYTE, but there's not a huge point in simplifying
this further because the verts buffer is uploaded once in the lifetime of the
shader, not once per frame.

For some reason, this magically fixes weirdness that I was seeing on iOS.
Add two argument add() method to GLBuffer.Short.
Freak not out if the shader is null; i.e. not yet initialized.
Report renderer/shader info on the main tests menu.
Revert float jamming until we figure out why it breaks on iOS devices.

It works in the simulator, but results in weird colors on the device. It works
fine on Android, HTML5/WebGL, and Java, but not on iOS. Mystererious.