this is explained really well in a bbc show called the wonders of the universe..
one of the episodes in the series covers the subject of light..
if anyone hasn't seen it and are interested in this kind of subject, i recommend you watch the whole series.