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.
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.
Automatic solar tracking again functional.
Merge remote-tracking branch 'upstream/dev' into APC

Conflicts:
	code/ATMOSPHERICS/components/unary/heat_source.dm
Fixes the light power consumption the new /tg/ style.
Merge remote-tracking branch 'upstream/dev' into APC
Merge remote-tracking branch 'upstream/dev' into APC
Merge pull request #6889 from PsiOmegaDelta/APC

BYOND akbar