Euler to quaternion for small angles (approximate cos as 1 and sin x as x).  Will revert on next commit, just wanted to keep a record of this experiment, which worked fine, since dragging callbacks happen so frequently, angles are always small.
Reverting back previous commit, just using full trig, small angle optimisation works, but is unnecessary.