Been looking at the numbers and it looks like just a lot more conservatives showed up to vote. According to TNR:
Not only did Kerry win by an 86-13 margin among self-described liberals, he also won by a 55-45 margin among self-described moderates. So how'd Bush pull it off? He won 84-15 among self-described conservatives, and, more importantly, he made sure conservatives comprised a much bigger chunk of the electorate than they did in 2000. (Conservatives comprised about 34 percent of the electorate yesterday, versus 29 percent in 2000--a huge shift, raw numbers-wise.)
Kerry did just fine amoung everybody he should have to win, but I think the Karl Rove stratigery of getting conservatives fired up really did work. It fired up liberals too, it just fired up conservatives more. Turnout overall went up 20% across the board from 2000. Remember we are only talking about a few % points here. No need to move to Canada, even if the idea is tempting. I think that if Bush tries to push hard to the right (and I think he will) he is going to hit a wall.
Other notes - Man were the exit polls ever wronge. The going theory is that pissed off Democrates voted early and messed up the numbers.