Colors as a first-class data type