Handle colours that aren't tuples of floats
Corner fill working
Refactor to de-duplicate code
Guarantee that the same colour isn't used twice