DB/Quests: Fix quest The Collapse and Deploy the Shake-n-Quake

Ref #1005
Ref #2034
Ref ae307048475ff14863d5a
Closes #3595
Script/Quest: Kodo Roundup

Closes #943
Core/SAI: Rewrite SmartAI::RemoveAuras in a safer way
Core/Spells: Fix cooldown problems for Val'anyr, Hammer of Ancient Kings
Closes #9162
Core/Objects: Rewritten UpdateMask class to perform bit operations faster at the cost of higher memory use and moved building the mask for packet to a separate method.

Closes #9127
DB/Creature: Fix Onyxian Lair Guard equipment
DB/Triggers: Fixed access to Duskwither Spire
DB/Factionchange: Add a missing spell (Teleport: Darnassus / Teleport: Thunder Bluff) at player_factionchange_spells
DB/Triggers: Added anti-exploration in Hellfire Ramparts
Buildsystem/CMake: Drop a FATAL_ERROR-message if the git binary is not found or outdated.
Allow for it to be pointed to through the ADVANCED settings in the CMake GUI if the above is true.
Core/Sockets: Always try to send MSG_NOSIGNAL in peer().send()

Fixes RASocket::authenticate crash

"MSG_NOSIGNAL:
If you send() to a remote host which is no longer recv()ing, you'll typically get the signal SIGPIPE. Adding this flag prevents that signal from being raised."

Closes #5040
Thanks to @derex for the hint
DB/NPCs: Set trigger flags_extra to a bunch of quest credit markers

God damn Aokromes, always making me do work and stuff...
Core/RealmSocket: Remove a not required #ifndef MSG_NOSIGNAL / #define MSG_NOSIGNAL 0

Somewhere in ACE overloads of send(), flags are default'ed  to 0 if not provided
Buildsystem/CMake: Allow building the core without the gitchecks, this is done in the GUI, or through the DISABLEGITCHECK parameter on *nix-platforms.
DO NOTE THAT WE WILL NOT GIVE SUPPORT ON ANY CORE-VERSION COMPILED WITH THIS FLAG, AS WE CAN NOT EFFECTIVELY FIND OUT WHAT REVISION YOU ARE ON
Buildsystem/CMake: Fix an issue with MSVC not finding git-binary when updating the revisionhash/revisiondate + rename DISABLEGITCHECK parameter to WITHOUT_GIT (to adhere to our standard)
Also cleaned up the checks slightly + moved git-specific testing to its own macro (minor changes to shaurens original patch applied)
Buildsystem/CMake: Forgot to change variable in main CMakeLists.txt
Buildsystem/CMake: Correct a few mistakes regarding WITHOUT_GIT, and add a better warning during configure-phase.
Buildsystem: Do not print warning that user needs to do a git pull with tags if configured to not use git at all
Scripts/Icecrown Citadel: Fixed possible crash for Necrotic Plague (if cast outside of ICC)

Closes #9188
Fixup for last commits.