colorterms: split out handling of no color term

Added an exception class to indicate no color term, and a
wrapper around selectColorTerm to catch that exception and
provide the default.  This allows the user to decide whether
a default is acceptable.