DNA2 EPISODE 2: Revenge of the Bugs

Made after DNA2 hit /vg/'s main server after no one tested anything.

* Gene activation/deactivation made modular, refactors domutcheck.
* Standardized genetics disks and injectors a bit in response to buffer corruption issues. (Untested)
* Lots of major bug fixes.
* Skin tones fixed.

Still needs further testing. All I did was mess around with monkeys.
Merge branch 'dev' into dna2

Conflicts:
	code/game/dna/dna2.dm
	code/game/dna/dna2_domutcheck.dm
	code/game/dna/dna2_helpers.dm
	code/game/dna/genes/disabilities.dm
	code/game/dna/genes/powers.dm
	code/modules/mob/living/carbon/monkey/monkey.dm
DNA2 Bug Fixes - Part 2

We discovered that most of the problems were were having was because of BYOND passing lists (e.g. SE and UI) by-ref instead of the assumed by-val.

This commit adds dna.Clone() and (UI|SE).Copy() where needed.  These should be used where DNA or SE/UI lists are COPIED, otherwise changes made in the reference will affect the real strand.

This change also messes with the gene activation logic.
Missed the gene Life() call.
Fix earlier screwed commit
And now tested in game, with some fixes.
Merge pull request #4395 from N3X15/dna2

DNA 2 - Bugfix Roundup