Ports more of /tg/'s powernet code.

Among other things this fixes a a bug where SMES would draw excess power from the powergrid they were outputting to, rather than drawing from.
Test-area
Merge remote-tracking branch 'upstream/dev' into APC. Updates map with new SMES variable names.
Changes labcoat code so coat buttoning isn't based on a giant switch, and icon states are set in the item itself rather than the logic for buttoning and unbuttoning.

labcoat_open is the icon state of the labcoat while open, and labcoat_closed is the icon state of the labcoat while closed.
Minor change for comments and defining the variables by full path.
Merge remote-tracking branch 'upstream/dev' into APC

Conflicts:
	code/game/gamemodes/events/power_failure.dm
	code/modules/power/smes.dm
Fixes compilation issues, SMES can again partially recharge.
All coats that can be buttoned are now subtypes of /obj/item/clothing/suit/storage/toggle

This includes labcoats, IA jackets, first responder jackets, and the brown leather jackets.

This way, code for button toggling doesn't have to be duplicated for labcoats and other coats, and it's easier to add other types of coats that can be buttoned up if someone wants.
Apparently the blue lawyer jacket didn't actually button up properly. Now it should button up, and uses the same system as everything else.
Forgot to actually set icon_open and icon_closed for labcoats. Whoops! Fixes that.
Some mildly offensive wording to less offensive wording. I'm not actually sure how that got in there.
Fix for jobs that were spawning with the old labcoat types rather than the new ones, as well as lockers that were.
Fixes #6702 and cleanup

Makes reinforced glass a subtype of glass, cleans up window creation copypasta.
Cleaned up window initialization leaking outside of the window constructor.
Removes unnecessary init_dir var from windows.
Merge remote-tracking branch 'upstream/master' into window-fix
Mapping changes for #6702 fix
Fixes door projectile damage
AI's no longer able to use specop's shuttle console.

Keeps naughty AI's from launching it early.
Makes helmet icon south state consistent with east/west states.
Makes vending machine coffee price in line with other items
Adds tajaran/unathi tacticool sprite sheets

No more clipping into muzzles.