Made Vector3 class mutable due to huge garbage created.
Cleanup
Created Curve object that can be used as a motion path or otherwise.

Cleaned up Vector3 to make it also usefull as a mutable type, now two
types of methods are available:
- [operationName]()
and
- [operationName]Local()

The first returns a new Vector3 that is the result of operations, the
second mutates the object.

added "localToGlobal" in Spatial

Improved the memory management by reducing the calls to mutable Vector3
operations.

Removed old Vector.java class.

Fixed scaling behavior with lights by calling glEnable(GL_NORMALIZE) in
Engine initialization.

Spatial::getRotation/Position/Scale dont return copy of the position,
they return the original object, which can be worked upon.

Optimized performance for bounds.