Batch time reduction for boiling, broth, and soups
Batch time reduction for meat recipes
Meat jerky batch time'
Fix human bologna time
Whoops, batch scaling on wrong line
Basic curing and tanning.

Hides/pelts are now perishable (and if you're desperate, edible) and
requiring curing to keep from spoiling. Cured hides can be tanned; this
process takes about two days to complete, after which they can be
activated to turn them into a single large piece of leather or fur.
Recipe integration.
Modern tanning recipes and book.

New book is found in textbooks, gun xtras, and camping item_groups.
Flag derp.
MOAR descriptive descriptions.
Price derp.
Better pricing.
trader_avoid and such.
Hide scraping recipe.
Skill fix.
Move the code to generate submaps to the beginning of map::loadn

Also add a debugmsg when generation failed, because that will most likely lead to a crash and there should be something (directly visible to the user, not inside a log file) that hints what the cause was.

Replace "worldx + gridx" with absx, which is calculated just a few lines above.
Move code to actualize the content of a just loaded submap into separate function
Move set_abs_sub before calling map::loadn.

map::loadn loads a single submap, it makes no sense to adjust that coordinate here, it affects the whole object.
It's far better to set this
a) when loading the map with map::load, which loads all submaps at once.
b) when shifting. It s already called there. It must be called outside of loadn there because it's not garanted that loadn(0,0, ...) is called there at all. And only when called with gridx==gridy==0, set_sub_abs is called in map::loadn.
astyle map::actualize

Removed pointless check "g->active_ncp.size() >= 1", the iteration handles the case of an empty vector just fine.
Extract the item rot away on the map code into a function.