Change the fading algorithm so that (theoretically) they can all fade at the same time?

Not tested but does compile; should work