Wait, so previous ones didn't consult the literature for animation systems and how (at least the ones I know) most of them nowadays use quaternions because of discontinuities and gotchas? That seems weird, even if you don't care about ik, quaternions have very nice properties for animation systems, and only add an extra variable (4 vs 3) so aren't too much of an overhead compared to reduced error handling or going all the way to 3x3 matrices.