Increases effect of mass on vehicle speed.

Was doing testing for a road roller (uses ten roller drums for wheels) - experimented on a roller I've found (51' rollers, so wheel bigness was a constant, done on v12 engine), I was changing width (w) and mass (m) of the roller drum, while jotting down the safe/maximum speed (sp) that was attainable:
w=200, m=750 kg -> sp 33/1239
w=200, m=1500 kg -> sp 33/1239
w=200, m=15000 kg -> sp 33/1239

w=60, m=750 kg -> sp 95/1239
w=60, m=1500 kg -> sp 95/1239
w=60, m=15000 kg -> sp 94/1239
w=60, m=1 g -> sp 95/1239

w=20, m=750 kg -> sp 197/1239
w=20, m=1500 kg -> sp 197/1239
w=20, m=15000 kg -> sp 189/1239

While a v12 engine is powerful, being able to blast a roller weighing 150 000 000 grams (10*15 000kg in the most extreme case) at 189 km/h safely is a bit too much. That and the fact, that increasing total vehicle mass by a factor of ten lowered the safe speed by 8 hm/h (4%).
Color added to perishable items, and items about to rot.

This makes it so perishable items are shown with a green color in your list, and the items that are about to rot (10% left of the time before it rots) will be shown bright yellow. This transitions nicely into the darker yellow/brown color when it has rotted and gives the player a hint that this one is going to be going bad soon.

Example items:
Pear spoils in 140 hours. That means it will be bright yellow for the last 14.
Milk spoils in 8 hours, meaning it will be bright yellow for 48 minutes.
Jam spoils in 240 hours, so the last 24 hours will be bright yellow.
Updated the color to cyan to make it differ from ammo, and added the (old) tag to items about to go bad.
Move randomly adding FIT flag into item constructor.

That way *all* created items have a change of getting the tag, no matter where they have been created.
Fix vehicle acceleration being clipped by the maximal speed, even when that speed is 0.
Removed some const casting

As per comment on the PR, there's no need to const_cast the calls here. Also removed the unused food item pointer.
Fixed two typos in weather.cpp
Move monster regeneration and damage-in-sunlight and regenerate-moral code into process_effects

That way it is applied even when the monster has no moves to spend this turn.

Those things are more like effects anyway.

Added some player-sees-it checks in front of the messages.
Merge pull request #9399 from mafagafogigante/typos-in-weather-cpp

Fixed two typos in weather.cpp
Merge branch 'vehicle_mass_dynamics-fix' of https://github.com/Aenye/Cataclysm-DDA into merge
Merge branch 'perishable-food' of https://github.com/tivec/Cataclysm-DDA into merge
Merge branch 'fits' of https://github.com/BevapDin/Cataclysm-DDA into merge
Merge branch 'vehicle-max-velocity' of https://github.com/BevapDin/Cataclysm-DDA into merge
Merge branch 'regon-monster-p' of https://github.com/BevapDin/Cataclysm-DDA into merge
Changes in DEVELOPER_FAQ.md

Corrected a few typos and

in line 5: maybe for a reason I do not understand, whoever wrote this
skipped the item #2. Maybe it is an internal joke and I broke it. However,
as I really do like the number 2, I "dropped" the last sentence of the
first item to a new item (numbered 2).
Merge pull request #9402 from mafagafogigante/developer-faq

Changes in DEVELOPER_FAQ.md
Add large-gauge cable item and jumper cable vpart.
Finite state machine, get.

Two possible states at the moment: attach_first and pay_out_cable.

In the first state (also the default), you get asked for the first
vehicle to attach the cable to. In the second state, the cable keeps
track of the remaining length of cable in the spool you've activated,
and updates the count of charges to suit.

There is currently no checking for the cable reaching zero length (it
will be removed when this happens), and no way to attach the second
vehicle. But it kind of works, and you can drop the cable and save/load
and it'll still keep track of what its first connection is.
Make the cable disconnect when you get too far.

I tried having it work the other way (the loose end falls out of your
hands), but that came with too many corner cases. This'll do.
Give cable spools special active processing.

Adds a JSON flag, "CABLE_SPOOL", marking them for special processing.
Technically, someone could later add shorter, or longer cables.