Why Do Rainbows Have So Many Colors?