Atomic coffeepot clean water recipe tweak.
Merge pull request #8960 from Rivet-the-Zombie/water-stuff

Atomic coffeepot clean water recipe tweak.
Reduces crafting time for pine tea.

As mentioned on the forums, nine times the duration of boiling clean
water is a bit excessive.
Active mutation changeover

Some mutations seem to work better as active ones.  Let's get things
moving.
Merge pull request #8961 from Rivet-the-Zombie/pine-tea-fix

Reduces crafting time for pine tea.
Tweaks & bugfix

This teaks a few things, adds a very important TODO (active mutations
are Exploitable without it) and fixes #8959.
Fix collapsing
fixed a potential bug, where adding a tree to spawn to the array would
not spawn something else since the parsing was based on a static number
tone down spawn
Resurrect the JSON load order documentation.

I kind of lost it in the emergency oops-fix when I broke JSON loading
altogether for a little bit. Let's have that back now.
Change the C-style arrays in the player class to C++-arrays

Extend the json classes to read/write std::arrays.
Remove the operator=, copy constructor from Creature

Also removed from the inheriting classes player, npc, monster, Character.
Instead let the compiler create those functions.

Also added a virtual destructor to the Creature class.

This allows the compiler to optimize those functions.
Also when adding a new member, one can not forget to add this to the copy operator, the compiler automatically adds it.

Made the copy constructor/operator of Creature and Character protected. Those classes can not be instantiated anyway, one can not copy a Creature, but only a player or monster object.
Always save player/monster/npc with content

Removes the save_content parameter from the serialize functions.

Move storing and loading of player::worn/player::inv/player::weapon to common load/store function. It must be done for npc and player.

Also let the json classes handle the item-vector that is monster::inv, instead of iterating over it manually when storing it.
Export load/store of Creature members to functions of that class.
Implement hierarchical store and load for Creature and sub classes.

Added comment to document the way it is supposed to work.

Separated serialize and deserialize of player, monster, npc into load and store functions which call the load/store functions of the parent classes.
Food description
Check cw
Fix display bug in menues/listings:

Use function calcStartPos to calculate the display offset (first line of the menu to be printed).
It incorporates the option MENU_SCROLL and does the actual calculation correctly, the calculation in construction.cpp was missing the offset=0 case.
Print npcs & notes and vehicle names on overmap in one step

Instead of having three nearly identical functions, add note, npcs names and vehicles names to a vector and print that vector line by line.
Also uses utf8_width for each line (not used previously for npc names and vehicle names).

Removed overmap::print_vehicle and overmap::print_npcs.
Moved overmap::has_vehicle to overmapbuffer.
Remove storing and restoring old data values in defense games.

That data is reloaded whenever the user starts a new game anyway (as it's part of the world data, probably altered by mods).

Also remove `(void)g` - old artifacts of a simpler time when g was parameter to those functions.