My best guess would be a bad starter, but it could be some other sort of electrical gremlin.
I know that alot of auto stores will test the battery / starter if you bring them in. I personally like advance:
In-Store Services - Advance Auto Parts
Only downside to bringing it in is that you have to get on your back in the snow at the end of your driveway and remove the starter... not a fun situation.