minor vector quaternion stuff