Remove mathgl, no longer using it directly
Commit to float32 everywhere and build math helpers for this

With the addition of Quaternion and soon the setup of proper Camera
inclusion in the render path, the constant requirement to cast between
float64/32 was getting annoying. I've set up some proxy methods to hide
that casting and have decided to use float32 everywhere as that's what
OpenGL expects.

The only place I was previously worried about this was timer precision
but the system is already designed to take the difference from the last
frame, so that can be a float32 and always have very high precision,
while the window keeps the current time in a float64 so it's safe too.