Is it possible to extend this function to work with greater than two UIColors smoothly transitioning between them?