[WIP][MAINT] Simplify the implementation of the 'Core.Color' module.

This PR improves the maintainability of this module.

The improvements are:
- the decomposition of the file 'Color.hpp' into several submodules:
  - 'Pixel.hpp' for the pixel class,
  - 'ChannelConversion.hpp' for the conversion of channel types to another,
  - 'ColorConversion.hpp' for colorspace conversion,
  - 'ColorSpace.hpp' for colorspace definition,
  - 'Typedefs' for convenient color typedefs.
- the addition of unit tests:
  - [x] 'Pixel' class,
  - [x] channel conversion,
  - [x] colorspace conversion,
  - [x] typedefs.
- the removal of (horrible !) macros for pixel-based operations by using templates instead.
- the substitution of 'ChannelTraits' and 'ColorTraits' classes by simpler template functions. These traits classes are not very useful and hard to read and doesn't have that much value.