Refactored code so that CC3Node has no knowledge of scale or rotation

* Moved scale and rotation logic to CC3DrawableNode
* CC3Node now only handles translations
* cleaned up CC3Camera
* fixed up CC3Action hierarchy to reflect changes
Added CC3AnimatableRotation to correctly handle animation of rotations using quaternions

* Also fixed up camera constructor to correctly initialise up direction
* Up direction of camera is also updated when rotated
Started implementing "legacy" code for a more literal port of the original cocos3d source