ENH: Improve quaternions
Some improvements in the Quaternion class that should not affect any existing code or interface. Added:
- static method to generate Quaternions from axis+angle
- method to get axis+angle representation from Quaternion
- static method to generate Quaternions from Euler angles (ZYZ and ZXZ)
- method to get Euler angles representation from Quaternion (ZYZ and ZXZ)
- test cases for all of the above