Code refactoring :
  - rename Error::Id to Error::Status and make it a scoped enumeration,
  - make the union of color struct anonymous in Color class.