ColorCodes: simplify and comment a bit.

- Simplify logic and increase explanation to make it easier
  for the casual reader.
- Remove the undocumented, untested and not-clearly-working
  "percentage" support.
- Replace `eval` with `try`, as is my wont.

Addresses #620.
Also perhaps an `&emdash;` or `&middot;` might be a better separator than ~