chore(libs): add quaternion class