Code effeciency project: apc update_icons

Before:  It updated the icons quite a bit at the start of the game.

After:  It updates more often and quicker, but now it isn't as expensive
DNA2 fix.

Before:  If you shoved a skrell, cat, or any species other then human in the cloner, they came out human.

After:   Cloning works like it should.
Fixed issue #4439 (Detomax ignores status of messaging server)
Merge pull request #4450 from Ccomp5950/dna2-everyone_human_fix

DNA2 fix.
Merge pull request #4449 from Ccomp5950/apc_icon_fix

Code effeciency project: apc update_icons
Wardrobe fix

Fixes #4447

- Added a parent call to each wardrobe subtypes New() proc.
Wardrobes weren't calling obj/structure/closet/New(), so weren't adding items in the same location to their contents when first created.

- Removed wardrobe/New() proc.
So all subtypes don't inherit an extra set of blue uniforms and brown shoes. Only one wardrobe on the map is of this type, and it's on the derelict, so didn't think it was worth making a map change.
Vent pump efficiency

- Tweaked the pressure delta check to "> 0.5", so pumps will stop transferring minor volumes of air every tick (because a delta of 3.05176e-005 is still greater than 0). This also reduces the calls to gas_mixture/merge() and gas_mixture/remove() significantly once the air in the environment has equalized.

The results after running the game for 10 minutes:
```
Proc Name												Self CPU	Total CPU	Real Time	Calls
/obj/machinery/atmospherics/unary/vent_pump/process		0.035		0.141		0.141		3808	<- before
/obj/machinery/atmospherics/unary/vent_pump/process		0.014		0.042		0.043		3808	<- after
```
Merge pull request #4456 from Loganbacca/bayfix-efficiency

Code effeciency project: vent pump processing
Code effeciency project: /proc/get_mobs_in_view

Before:  Everytime you say something. This proc is ran.  Along with it, recurses through EVERY /obj/ & /mob/ in view's contents, and EVERY /obj/ & /mob/ in that contents...and once again.

After:  Fuck recursion, we're going to loop through clients and see if they are within any obj's or mobs within one iteration.  MUCH cheaper, and probably less buggy.

If someone can't hear everyone and they are within an object and it's not catching?  add it to the list commented for it of type checks.
This is rather ironic...

My VERY FIRST PR, I used it to make ghost chat be bold, instead of using viewers() to figure out
what ghosts could see the mob, I used get_mob_in_view() which sounded pretty descriptive.

Unfortunately for me it was one of the most CPU intensive ways of determining who could view the speaker for this.

So yeah, removing the second get_mobs_in_view and replacing it with viewers()

Yes this code has been in since Oct/Nov time frame :(
pAI / MMI emote fixes.

Fixes #4191
Further optimizations, no need to loop through items with multiple istype checks
Added myself to the changelog credits.
Fixed the Telecommunications (Server) Monitor showing /list instead of the default network.
Mech fab upgrade fix

Nano manipulators were not lowering build time at all.
Stock and Pico manipulaors were lowering build time by 6%.

This fixes that. Now: Stock = standard build time, Nano = 6% faster, Pico = 12% faster.
Merge pull request #4451 from JoeyJo0/master

Fixed #4439 and a small issue in the TCommSat
Merge pull request #4457 from Ccomp5950/FUCK_recursive_mob_check

Code effeciency project: /proc/get_mobs_in_view - hot
Merge pull request #4454 from Loganbacca/bayfix

Various fixes
Merge pull request #4459 from Ccomp5950/FUCK_recursive_mob_check

Unintended feature/bug.
Unintended feature/bug.

Players viewing through security cameras can hear, this is a bit to powerful.

So removing, it's easy to readd the feature later on.