Misc improvements - see detailed description

Cursor is now a descendant of RelativeTo.Room instead of
RelativeTo.World. This makes the cursor behave better with regards to
staying within user's field of view and starting in an appropriate
place, and also eliminates the need for cursor sensitivity. Size of the
cursor and of objects also needed to be adjusted based on this change.
Thanks @rpavlik for the suggestion.
Redid the lighting code. Lighting issues remain - these will be
addressed in a future commit.
Minimum sizes for GeometryObjects can be adjusted in a standard way now.
Throughout the program, some code cleanliness improved by making greater
use of Transform{} and MatrixTransform{} functions provided by JuggLua.