add basic quaternion operations on Vector4
tidy
more quaternion functions
Quaternion docs
Add basic quaternion tests
quaternion fixes