out of the box quaternions for c++