Adds New Bomb/Bomb Cores + A BIG bomb bugfix

Adds a training bomb that doesn't explode but rather lets you know it would have exploded. Upon detonation or defusal it will give you your current score and rescramble the wires for another go. It should probably be added to the map somewhere in a pull that follows this.

Adds a badmin bomb that lets you summon in a number of whatever you want with var editing, it defaults to a single cookie.

Adds a specially skinned badmin clown bomb that summons in a 100 clowns by default. It honks!

Fixes a HUGE bug where, thanks to machinery automatically adding themselves to processing, bombs were ticking down two seconds at a time. This does mean that all bombs are now "nerfed" to twice the time it took before. Whether this is a good thing or should result in the timer going "back" to 30 seconds to keep the timing consistant is an open quesion.
Partial commit for the cyborg UI upgrade, which gets rid of the pop-up window for module selection, instead displaying the available modules in storage-item like fashion.
- Clicking on an item in your modules list now instantly moves it, the delay between click and it moving to the active module slot, which is seen in the video, is no longer there.
Re-added the recycler's emag functionality and changed it so that it does massive brute damage and eats the person's equipped items.
The blood on the recycler is now scannable by a forensic scanner.
Fingerprints will now properly show up on the recycler.
The status effect procs will now properly update the can_move()
Admins can now possess the recycler to properly get it to gib people that it moves into.
The mineral stacker in disposals will now release stacks of 10.
All non-carbon mobs will still be gibbed, robots will survive with their MMI.
* Removed an unnecessary update_icons()
Added a stat check before say().
Adds new nuke toy, plays nuke sound when attack_self'd

Cooldown of 5 minutes
Adds a visible_message to the nuke toy when it is used
Span classes
Merge pull request #1 from RobRichards1997/Span_classes_for_erro

Span classes
Adds "surround" arg to playsound, which enables 3D sound

Defaulted to on
Also changes the toy nuke to use it
Adds a badmin bomb that lets you var edit the explosion (for pure firebombs and stupid huge explosions [remember to toggle the bombcap first])

Changes how wire shuffling works to cut down on abandoned wires.

Removes a rogue processing_objects I missed before
Upgradeable Laser Pointers!

Laser pointers can be upgraded with laser stock parts, which increases the odds of hitting a target.
Whee!
Optimized and refactored list2text, text2list, and replacetext.

Also fixed some grammar in the station blueprint code.
Minor nuke toy edit

Moved the user.visible_message call out of spawn()
Removed the now obsolete sleep() call and put the delay in spawn()
fixes
NanoUI Update

* Refactored the code used in the ui_interact procs to be neater and easy to understand (also less code duplication). Updated all existing ui_interact procs to match.
* Rebuilt (and simplified) template rendering system, removed data-linking (the use of carets "^" in templates) and the need to send the full data structure every update (just send whatever you want now, it's fully dynamic). Updated all existing templates to match.
* Restructured HTML and JavaScript to increase compatibility with IE (this fixes "blank uis" for many users).
* Increased the number of error messages to help diagnose issues.
* Multiple performance improvements, especially when updating an open ui.
* Added the ability to update a ui for an individual user (nanomanager update_user_uis proc, used for things like realtime messages in Bay's PDA).
* Added a "Loading..." notice to the UI. If this stays then your JavaScript isn't enabled.
* Removed redundant wip apc.tmpl file.
* Added a link to the online docs in TemplatesGuide.txt.
Merge branch 'master' of https://github.com/tgstation/-tg-station
Fixed a major bug.  Improved speed further.