Added Quaternion constructors.
Added several quaternion methods and constructors. Removed RotationVector as a type.
Added _AbstractQuaternion and _VectorQuaternion types to deal with non-normalized quaternions (e.g., when rotating a vector).