Major source code overhaul. [API CHANGED]

- scene.lisp and object2d.lisp combined into one file (base-classes.lisp)
- generic function definitions in a separate file
- many symbol names changed to more sensible ones
- etc etc

Warning: FIXME: LINE-CHAIN IS BROKEN!!
 - This commit broke LINE-CHAIN.
It was always poorly written and undocumented anyway, will fix later.
At least it is not breaking our builds.
Remove LINE-CHAIN.

It was broken, stupid, undocumented, and unlikely to be useful.

It will be resurrected if really needed. (yay git!)
Export public API in package.
Separate timer/queue into separate classes.

This allows the creation of lightweight timers and queues without needing
full-blown object2d instances. It also allows us to separate scene from the
object2d hierarchy -- it does not belong there anyway.