add a more flexible method for sub-spacing CIECAM02
better support the established XYZ 0-100 scale
add a test from the CIECAM02 spec
more robust hue calculation

Better fail than be wrong.
fix typo
prefer zero hue angle over full circle

These are semantically identical, so we just behave a bit less surprising.
add CAM02-UCS colour distance measurement

As opposed to the pre-existing methods, this
one implements the formula given in the papers.
fix typo