Implemented Collision Detection

Restructured most things.
Any object you want to have collision detection should now 'extend' the
Shape class.

Still need to sort out small bugs with the boundaries of the window, but
that should be easy.