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.
I looked into this on the upcoming `easier_css` branch which attempts to eliminate inline CSS.  I planned to move it out on there, but the background color bit was flummoxing me.  The current plan is to get @sdougbrown to help me figure out the right way to combine the static rules with the dynamic colors here (and in the resistor color IA).

If it's not a deal-breaker, I'd like to leave switching this out for that branch, so I needn't do it twice.