Fixes #1147 - type-mismatch

Added helper: /proc/findchar(haystack, needles, start=1, end=0)
works like findtext except it finds the first occurrence of one of the characters from the needles string, within haystack.

Permissions can now be removed as well as added, by replacing the + with a -. e.g. +BAN adds bans permissions, -BAN removes them. This applies to admin_ranks.txt and the permissions panel.

Verb overrides are now possible for admins_ranks. Specific verbs can be forced-on, or forced-off via keywords like +/client/proc/mimespeak or -/client/verb/ooc. This applies both to admin_ranks.txt and the permissions panel. SQL system is not compatible.

admin_ranks are now datums. This means admin_ranks actually behave more like permission groups as intended.
When you temporarily modify an admin's permissions via the permissions panel, their rank_name is appended with "([ckey])". This prevents modifications to their rights affecting everyone.

admin rank names now support - _ and @ characters (since ckeyEx() does not strip these).

SQL permissions system was modified. SQL databases will have to be updated or they will no longer work.

WARNING: admin_ranks.txt and admins.txt format has changed slightly! You will need to redo those txt files!
Added a space hotel away mission map.
Fixes lethal cryo.  Cryo was offgassing too much without activating its turf, this fix prevents lethal buildup of oxygen.
Adds missing pug icon states, adds some misc pug behaviour stuff

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
Muzzle and spear sprites fixed.
Fixes attached voice analysers not listening

The voice analyser will listen to the keyword now even when not secured
(enabling it to be directly used on grenade casings and tank transfer
valves).

Adds missing related proc to tank transfer valve.
Reagent fix:
Mercury now causes brain loss.

Ethylredoxane now removes ethanol from a mob.

Space cleaner no longer removes overlays. Most dirts and spots are /obj/effect/decal/cleanable's anyways.
Added newscasters to the mining outspost, one in each of the two smaller ones, three in the bigger starter one.

Where da news at?
Added three newscasters to main mining outpost: One in hallway, one in lounge area, one in ore smelting area.

Added one each in the equipment rooms of the other two outposts.
 * Fixes ghosts being able to deploy bombs.
 * Upgraded the nuclear interface to the new style.
Merge pull request #1234 from Sishen1542/master

Muzzle and spear sprite edits.
Changes a few runes for ease of use and making useless runes mildly useful.

Teleport Other no longer requires 3 cultists standing around it to use, can not teleport user.

Communicate rune no longer deletes on first use, talismans still do.

Free Cultist no longer requires 3 cultists to use. (This rune was pretty useless, and still is. Should probably replace it.)
Update runes.dm
Removed pointless code in communicate rune.

Removed code that didn't need to be there, changed usr to user as per Giaco's recommendation.
There are now 2 in main outpost, 1 in each mini outpost.
Merge pull request #1166 from Carn/admin_ranks

Fixes #1147 (type-mismatch) +features
Emote rework, invalid emotes are passed to ..(), slimes and cyborgs exempt

When an emote fails the switch check for a mob, it calls ..(act).
New files in mob/living and mob/living/carbon with associated procs that
handle these invalid emotes from higher emote calls.
If invalid on mob/living, mob/living will show the invalid emote dialog.
Slimes, Cyborgs, and MMIs do not call ..() on fail.
Start of standardizing required permissions for admins.

Using the dropdown menu / changing health / names of people in view variables now actually requires +VAREDIT.

Shuttle moving moved from +FUN to +ADMIN for convenience sake.

+ADMIN now required to view antagonists / law changes, before it was only required to check antags via verbs, which you could get around through the secrets menu.

+ADMIN Also now required to view all of the special information given about players in who menu (like antagonist status), but all admins can still see stealth keyed admins.
Revised.
Merge branch 'master' of https://github.com/tgstation/-tg-station into emotes-rework