Portable turrets update

Updates our portable turrets with the latest /tg/ changes, including https://github.com/tgstation/-tg-station/pull/5414, with some fixes of my own. My own additions include, among other things, an actual check for security access and the ability to prevent the AI from altering turret settings (similar to how it can be denied access to turret controls).

Features
* Can be relocated. Apply wrench.
* Turrets acquire targets individually.
* Possible to configure potential targets to some degree.

![Portable turret control panel](https://www.dropbox.com/s/bqwadh896sol18d/PortaTurret.png?dl=1)
The available settings.
* Enabling "Neutralize All Non-Synthetics" basically make the turrets work as they do currently. On by default in the AI core and on the telecommunication satellite.
* Weapon authorization and security record checks work just as they do for security bots.
* Authorized crew is by default anyone with security access and above, allowing security officer and command staff to enter the AI upload without first disabling turrets. That is, unless the AI has enabled the neutralize the non-synth option.
* The last option is basically for targeting aliums, no matter their credentials, as well as simple animals.
It seems like this switch statement is confused. A look through ```assess_carbon()``` makes it seems like 2 is for priority targets, while 1 is for less important targets. See [line 448](https://github.com/Baystation12/Baystation12/pull/6835/files#diff-9bf26fc48081b01cee91188d560dd09bR488) for example.

It might be a good idea to add a couple of #defines to the top of the file.