bathtub, oven, cupboards pushable
Changed itypes to use a map instead of a hash, as well as some required changes elsewhere, like in bionics, to make that work.

This is a significant refactor. It is the first step on moving items out to an external data file, and allowing more control over how items work later on.
Make the battery system bionic only consume as many batteries as needed
Move the meat of cauterization into player.cpp
Make knives capable of cauterization with a lighter.
Remove some commented out code.
Remove trailing whitespace.
Correct handling of flamable liquids.
Merge pull request #306 from wito/more-pushables

Just makes a few more things pushable.
Merge branch 'master' into knife-cauterize
Use the new item framework
Merge pull request #313 from ethankaminski/batsys-fix

Make the battery system bionic only consume as many batteries as needed
Fix indices used by crafting recipe definition macros, thanks Soron and veryinky for reporting.
Remove duplicate cases of toolsets.
Re-add fitted items to the definitions
Re-added leather trenchcoat recipe
Fix indexing errors in construction definition macros.
Merge remote-tracking branch 'dda/pr/316' into dda-master
Fix construction recipe macros so they don't scribble all over the crafting recipes.
Merge remote-tracking branch 'ethankaminski/knife-cauterize' into dda-master

Conflicts:
	data/changelog.txt