# Functions
UnitQuaternionFromTheta takes a vector and angle and builds a unit quaternion in the form (cos(theta/2.0), sin(theta/2.0))
Resources Used:
https://www.youtube.com/watch?v=mHVwd8gYLnI https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation.
NewQuaternion creates a quaternion.
https://github.com/toji/gl-matrix/blob/f0583ef53e94bc7e78b78c8a24f09ed5e2f7a20c/src/gl-matrix/quat.js#L54.
QuaternionZero returns a quaternion with 0 for all it's components.
# Structs
Quaternion is a 4 component imaginary number thingy for rotating 3D meshes.