Since as it stands the color stuff is really the slowest, I am copying
Data.Colour and specializing on the type, to try and make it internally
a bit faster. I still need to add functions converting between Color and
Data.Colour and also to use Color in the internals.