Fixes #6355

Not sure why it was commented it out, but it seems to be the cause of
the layer issues.
Fixes #6925

Fixes misnamed icon states in the dmi.
"Exploit Menu" uplink fix.

Double quotes will no longer break the json nanoui uses to display the data.

This fix removes the ability to use html and javascript (exploitable for nefarious reasons)

Specifying exactly what we want instead of assigning nanoui_data["exploits"] = L.fields
which passes by refernce instead of by value.

It allows us to also sanitize the input so everything that gets displayed in nanoui doesn't have html
Fix emergency shields activating without being turned on
Merge pull request #6936 from GinjaNinja32/shieldfix

Fix emergency shields activating without being turned on
Merge pull request #6926 from mwerezak/pipe-layer

Fixes #6355
Merge pull request #6930 from mwerezak/robot-eyes

Fixes #6925
fixes robo- and amputated limbs not working on spawn

i pulled in some patches from upstream today, then my players reported
robotic and amputated limbs are not appearing on spawn.
not exactly sure what happened here, but it looks like
somebody tried to fix one issue and created a bigger one.
organs are never in both organs_by_name and internal_organs_by_name,
so the flag setters became unreachable due to "if(!I || !O) continue"
Merge pull request #6928 from Ccomp5950/uplink_fix

"Exploit Menu" uplink fix.
Fixes #6299
Merge pull request #6944 from Walter0o/robo_join

fixes robo- and amputated limbs not working on spawn
Powernet Update Fix
- Fixes issues caused when makepowernets() was somehow called.
- Substations (or read, breakerboxes) work properly now. Tested.
- Powernets no longer decide to randomly stop working when stuff is being modified.
- Mostly temporary fix until next devmerge which will (hopefully) add /tg/ powernet code.
SMES interaction fixes
- Removing/adding terminals no longer shows the wrong warning messages.
Colored Cable Fix
- Cables are now properly colored when placing them with colored cable coil (instead of always making red cable)
- Removed duplicate definition of color (color and item_color), only var color is now used. That probably caused this issue in first place.
Buildable SMES overload EM pulse now won't now slow other effects from happening (which was not intended and can be noticed, espicially with larger overloads.)
Fixes SMES deconstructing yielding no parts.

- Damn you indentation.
Buildable SMESs now work properly with power restore secret.

- Instead of setting SMES to output hardcoded amount, maximal value deducted from that SMESs variables is used.
- For example, the engineering SMES is quadcoil type, giving it maximal output of 1MW. However, hardcoded 200kW would be barely enough to run the station.
Typo fix from previous commit.
Magnetic gripper can now pick up magnetic coil (SMES construction part)
SMES UI fixes

- SMES now shows "Partially Charging" in UI when it has at least some input, but not enough to charge at set rate.
- Added yellowish-orange overlay which is used instead of the normal one if the SMES is partially charging, so you can visually see it without having to open the UI.
- UI input/output rate fields are now 20px wider. This fixes issues with values that exceed 1 000 000 W. Such values are possible with multi-coiled SMESs.