Volume now has an equality operator.
A new function: snapVolumeToVolume.

It moves one paddle to the side of another.
No, the amount of degrees can not be expressed as radians.
BallOptions and PaddleOptions stored integer positions. Now they don't.

This is very much a bug. These positions should be double floating point
to be consistent with the rest of the engine.
Added a to_radians function for use with the rotate vector function.
A series of dumpJSON functions now can serialize the world.

Currently, pressing tab during the PaddleGameState prints this
representation.
Added two functions isPaddle and isBall.

They are wrappers around a call to getPhysicsOptions, etc. I'm still
deciding whether a wrapper like this means I am doing something wrong.
obj.getPhysicsOptions().type is just long, that's all.
An ObjectManager can now be constructed with a server.

The constructor uses Server::objects and server::getObject to construct
a map as expected. The function also changes the id counter and the
unused queue so that the manager can be used normally.
An object manager can now be serialized as a JSON object.
No need for a constant Server to construct an ObjectManager with.
The server dumpJSON now is implemented with an ObjectManager.
Added two functions which return the type of an object using an id and ObjectManager.
No need for Object to have a vtable.