Color Gradient

Added ColorGradient …
* class
* tests
* property

related to #25
Enum classes are best declared outside of a class so that one can use the forward decleration feature.