Map cleaner tool and merge driver

Most info can be found in maptools/install.txt
Merge branch 'master' of github.com:tgstation/-tg-station
Merge branch 'NTSL_Fix' of git://github.com/Giacomand/-tg-station
Merge branch 'master' of https://github.com/tgstation/-tg-station
Updated the violin to use the new UI style and datum, and fixed a bunch of dialog updating bugs within. Fixed a couple buttons to work before song created, that should, such as import song. Changing tempo works more naturally now.
Merge branch 'master' of https://github.com/tgstation/-tg-station
Merge branch 'master' of https://github.com/tgstation/-tg-station
Moved backend and UI functionality into the datum/song class and made in generalizable for special-case functionalities for player checks, etc
Merge branch 'master' of https://github.com/tgstation/-tg-station
The nuclear bomb explosion cinematic now plays to all clients instead of only living ones.
The nuclear bomb sound now plays to all players instead of only mobs extremely close to the bomb.
Portable turrets will now use the same projectile than the gun wich they were builded with.
All the portable turrets will use the same amount of power now.
Added a check to make sure that borgs don't use their tasers/lasers on the process of making a portable turret.
Made the switch check on the New() proc of portable turrets less awful.
Portable turrets that use lasers will have the orange sprite (retro-lasers, practice, captain's gun, lasercannon), everything else, the blue turret sprite.
 * Fixes the solar control computer so it's overlay works in auto mode.
Merge branch 'master' of https://github.com/tgstation/-tg-station
Portable Turrets:
-Changed the power from portable turrets from 200 to 500

Nuclear bomb cinematic:
-Removed a comment as per carn request.
-Changed a bit the killing loop.
Fixes items calling their afterattack() proc when they are used on surgeries, for example, inserting a syringe inside of a person and then starting to inject the contents of the syringe on said person.

afak, surgeries can't be handled on the afterattack() of the different surgery tools because of cavity implants, so this is a semi-decent fix that can be used for future features too. But I do not like touching this code. I appreciate any feedback about this.
Merge branch 'master' of github.com:tgstation/-tg-station
Fixes a typo in the dirty floor MC setup. \ref -> \red.
Makes /obj/effect/decal/cleanable/dirt mouse_opacity 0, as it covers the whole tile and prevents people from crowbarring it up.
It can still be cleaned by mopping the tile.
Standardises dirtystation.dm, and vastly reduces the chances for 'interesting' dirt, such as blood and vomit. Blood in particular is much rarer.
Makes virology always clean.
Merge pull request #91 from Petethegoat/master

Update to dirty floors.