I would checked Machinery's Handbook and my Engineering Drawing and Design... Both had the same defination, which has already been discussed and is mentioned in CBL's first link.
I agree that having screws/bolts be able to "morph" depending on useage is unacceptable. I hate to disagree with what I have considered an infalliable resource (Mach. Handbook), but this is where I'm making my stand!
My definition is going to be: If it will not accept a nut or is installed with a screwdriver, it is a screw. Otherwise, it's a bolt. And before we get into another debate, screwdrivers are flathead or phillips. I don't want to hear about "screwdrivers" with sockets for hex heads. Those aren't screwdrivers in my book. I don't know what they are. I guess boltdrivers.
I'm also not sure where other configurations of internal driving mechanisms fall (i.e. square, star, etc). I suppose since I definately would say that socket heads are bolts, then those would be bolts (unless they will not accept a nut of course!).
-- MechEng2005