Added a lot to the quaternion class