Throw a more descriptive error for invalid colors in ops. Fixes #309