What Makes A Rainbow?