Introduce Quaternion

The quaternion code existed, but was hidden away in transform
utils. This change exposes it and allows it to be reused
elsewhere.

[email protected]

Bug: None
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I8d62db79e8a228864fd82a8cba4086b1caeb820f
Reviewed-on: https://chromium-review.googlesource.com/526993
Commit-Queue: Ian Vollick <[email protected]>
Reviewed-by: Michael Thiessen <[email protected]>
Reviewed-by: danakj <[email protected]>
Cr-Commit-Position: refs/heads/master@{#478044}
17 files changed