Use correct vector space definitions

- Undefines errorneous +, * on LCHUv
- Defines +, * on XYZ as a linear vector space
- Defines +, * on all other ColorValues using intermediate arithmetic in
  XYZ space

cc @rennis250 @timholy