A bit like Unity's structure (see: http://docs.unity3d.com/ScriptReference/Transform.html). Also, could do with syncing changes e.g. changing orientation via euler, quaternion should update the 'forward' vector.