Ellipse added and some refactoring

Added an Ellipse class. Did some refactoring to put common code in the
BaseObject class, and made it so that the objects can access the world's
properties.

Also changed the meaning of the rotation vector. Its length is now equal
to the angular speed in rad/sec. So when rotating, use the partial omega
which is the given omega, divided by the world's FPS. Tested it with a
stopwatch, and it works well :)