AP_Math: refactor quaternion library
AP_NavEKF: Quaternion::to_euler now uses references instead of pointers
AP_Math: fix up rotation test suite
AP_Math: change quaternion class to use const references where optimal
AP_Math: expand frame transformation test case for quaternions