more refactoring

- add quaternion module doc