I know of none I consider usable for gaming purposes. I'd publish mine, but even I hate it. I can give you sketches of the missing functionality if you desire (hey you already have direct rot vector by quat!) WRT: SLERP - there are multiple ways to implement depending on how it's going to be used. Also I assume that by "quat to matrix" conversion that you really mean "quat rotation function to matrix". Also exp & log are very useful for design purposes if you want to play around with curves in quaternion space (used for blending between animations...say walk -> run, etc.)

WRT: Bones I'd consider using quaternion/vector pairs...in that manner you can choose to perform the rotation in the most efficient manner depending on the number of attachments at a given joint. Also (maybe not worth the effort) one degree of freedom joints have a simpler quaternion formulation. It's possible to use dual-quaternions (AKA Study quaternions, normalize Plucker coordinates) for generalized screw motions, wrenches, etc. Or better yet find a working library (and tell me about it

)