Merge branch 'master' of https://github.com/Baystation12/Baystation12
Merge branch 'master' of https://github.com/DJSnapshot/Baystation12-Luna
Merge branch 'master' of https://github.com/Baystation12/Baystation12 into dev-freeze
Merge resolution.
Merge pull request #3751 from Baystation12/dev

Staging [Do not merge]
Moves around some ZAS stuff and fixes some things in FEA gas mixtures.

ShareSpace now can take a gas mixture as an argument, alongside the usual list of tiles.
Three new procs on gas mixtures, add() multiply() and divide().  Self explanatory.
Zones with unsimulated tiles that sleep will now reset themselves to the average air.
assume_air will only add air to sleeping zones with unsimulated tiles if it can wake the zone up.

Signed-off-by: Mloc <colmohici@gmail.com>
Fix for sunglasses and night vision goggles
Merge pull request #3809 from DJSnapshot/antag

Fix for sunglasses and Night Vision Goggles
Merge pull request #3808 from Mloc/sleepyzas

Moves around some ZAS stuff and fixes some things in FEA gas mixtures.
Code cleanup.
Merge pull request #3810 from Segrain/master

Smallfix.
Merge remote-tracking branch 'upstream/master' into dev-freeze
Sprite fix.
Smallfix.
Quickfix.
Balance fix.
Fix for #3804.
Merge pull request #3812 from Segrain/dev-freeze

Dev-freeze bugfixes.
making a generic version of the AI's visibility code so that it can be reused by the Cult Spirits
* fixing the visibility update loop through the dictionary
* moving the standard turf and object update triggers to the visibility_network update_triggers.dm file