Replace horrific try/catch when loading recipes with explicit check for array vs single element.
Don't auto-pickup stuff from adjacent but sealed squares.
npc fixes:

Put liquid ammo into a container when spawned for a npc (for npcs that
use a flamethrower and start with gasoline).

Check item::is_null() instead of checking the (translated) name.

Set pebbles to be default ammo for ... pebbles, to give those poor npcs that start with a pneumatic assault riffle some ammo.

Board and unboard npcs properly upon movement.

Store in_vehicle status for npcs in saves.

Instead of weapon.make(...) call weapon = item(...) for starting npc weapons.
Weapon is initially a null-item, null-items have no charges so their charges value is set to -1. If the weapon is made into a throwing knife/axe it needs charges, but item::make does not set those charges.
This results in npcs wielding a throwing knife (which is ammo!) that has -1 charges. If the item is picked up by a player it *removes* one charge from their existing throwing knife (the charges are simply added).

Prevent non-armor items from spawning in npcs worn items list.
Improve item pricing:

- rotten items are worth 10%
- include contained ammo in the calculation
- handle tools with charges and reduce their value if the charges are depleted
- items counted by charges consider their charges
- damaged items are less valuable
Move game::place_corpse into the player class,

and use it from npc::die instead of duplicating the code there.
Merge branch 'exceptions-are-not-control-structures' of https://github.com/kevingranade/Cataclysm-DDA into merge
Merge branch 'fix-npcs-bugs-prices' of https://github.com/BevapDin/Cataclysm-DDA into merge