This adds a system for picture-in-picture UI windows using
vis_contents. Essentially, it allows you to make UI windows that show an area of turfs. It also refactors how cameranet visibility works.
Currently, this is implemented on AIs. They gain two new UI buttons - "Enter Multicam Mode", and "Create Multicam". When they go into Multicam Mode, they see a background of animated binary numbers, and they are allowed to create an infinite amount of these picture in picture windows, which subsequently creates an AI Eye for each one. They are able to control each AI eye individually, by first clicking on the PIP window to select it as "active" and then using the normal arrow key controls. The PIP windows can be freely resized and moved around the area.
You can control everything inside these PIP windows EXACTLY the same as you can using a traditional AI Eye, as demonstrated below.
For admins, there is a config option to disable PIP entirely - simply set `var/multicam_allowed = TRUE` to FALSE if you wish to disable it from being used. (Please be reasonable.) <3
You can see an example of how this works here:

AI Multicam functionality.
Do note that if the lightbulb in the AI core is busted, the multicam room is dark(er) than it would be, but you can still see your camera windows just fine. (I'll probably fix this later.) It only affects the "matrix" backdrop, the PIP windows are still fine.
This has been runtime-tested with the latest `master` revision and produces 0 runtimes, and has no noticeable impact on server CPU usage.
Polarisport is here! Port of https://github.com/VOREStation/VOREStation/pull/7752
* Polaris initial plane upstream merge
* POLARIS: Fix RIG visors with new plane system, and material scanner VIS_FULLBRIGHT
* POLARIS: Fix GetFlatIcon so that cameras and id pictures don't show the HUD overlays.
* POLARIS: Adds a 'alter values' proc for plane master ease of tweaking
Setting stuff like colorblindness variety and things.
* Remove NIF reference, fix lighting layer define
* Handle effects above lighting plane
* Moved all layer defines to planes+layers.dm
* Fixed overlays that are supposed to be above lighting to use the PLANE_LIGHTING_ABOVE
* Merge: 3000% human/update_icons() speed improvement
* Merge: Avoid ghosts pointing at things
``/mob/dead/observer`` -> ``/mob/observer/dead``
``/mob/eye`` -> ``/mob/observer/eye``
Reason being that they are similar in that they both don't interact with
the world in any way. Some procs were shared, some checks as well, and
it overall makes more sense this way. Plus, there were no ``/mob/dead``
mobs.
- Fixes few typos in the code
- Fixes AI Eye object being solid, therefore being able to block movement of other players.
- Fixes non-station APCs boosting CPU as others.
Implemented Suggestions
+ Selection is now done in slightly better way (Basic Encryption Hack, Hack/Unlock Cyborg, Hack AI). Only relevant entities are offered in the list.
+ Adds varedit-modifiable variables for CPU Gain and Storage boost. These variables may be used by admin in game or by tester to faster unlock abilities.
+ Slightly nerfed APC CPU power generation.
+ Reworked machine overload. Now it only works on machines which are powered. Unpowered or broken machines cannot be overloaded. /obj/machinery/power type machines (APCs, SMESs, overall most stuff that directly handles electricity) received bonus explosion strength to compensate. Machine overload also drains massive power from local APC, therefore preventing spam of this ability (normal APC should take about 2-3 of these before needing to recharge). Also, qdel instead of del.
+ System Override now uses shuffled list of APCs when hacking them, as opposed to alphabetical list.
+ CPU generation rate is now shown in Status tab.
Implementation of a cult visual network, similar to the original camera network.
Includes the "eye" itself and the initial construction of a mob that can control one.
Relocates eye movement to the eye code itself.
Adds a mask that allows any mob able of wearing it direct access to the camera network, as a proof of concept and adminbus.
Now possible to customize chunk obfuscation image per chunk type.
Obfuscation images are stored per type (thus the small datum structure) to reduce memory footprint in the case of multiple chunks using the same image.