Take a look at the the time. This is the first in a stretch of 9 sunrises listed at 4:49am for my town. The earliest sunrise of the year will be on June 14th, about a week BEFORE the summer solstice. The latest sunset will be about a week AFTER solstice, thus the longest day occurs at solstice.
Why these three things don't coincide exactly has something to do with the Earth's tilted axis relative to the sun.
Here is the other surprising thing I've learned. Around the solstices the sun rises only a few seconds apart from day to day; in the days around the equinoxes it rises closer to two minutes apart. The difference in the rate of change has to do with the fact the Earth's rotation around the sun is an elipse, and not a circle. When the Earth is closest to the sun in its annual elliptical revolution (at the March and September equinoxes), it is moving past the sun more quickly.
The explanations of all these phenomenon are not easy to process (at least, not easy for me), but if you're interested, this sentence has a couple of links that take a shot at it.
Inspired by N's post yesterday, I bit the bullet and set my wake up alarms for 10 minutes earlier. 4:10am and 4:20am - the earliest I'm going this year. She reminded me that it pays to get out there about 20 minutes ahead of sunrise, and it paid off today.