Speedhack enhancements, quaternion enhancements

Removed the need for static fast_* objects and their overloaded
operator(), so that's one less function call faster and no static
variables.

Added conversions to and from spherical coordinates for quaternions