Core/Misc: Fix a merge failure in SpellAuraEffects.cpp

Thanks Tuxity and Vincent
Core/Quest: Bloody Breakout

Closes #641
Core&DB/Trainers: Remove `trainer_spell` from `creature_template` since it is not longer necessary on Cata
DB/Gameobjects: Set proper state for ToCr doors and fixed looting of Venomhide Egg & Discarded Soul Crystal
DB/Loot: Add Cache of the Ley-Guardian to heroic Oculus loot when RDF aura is present.

Closes #6927
Merge remote-tracking branch 'origin/master' into 4.3.4
Buildsystem/CMake: Change policy CMP0005 to NEW and corect some buildvariables accordingly

** Info from CMake:
**   The OLD behavior for this policy is to place definition values given to add_definitions directly in the generated build rules without attempting to escape anything.
**  The NEW behavior for this policy is to generate correct escapes for all native build tools automatically.

If this breaks build, let us know on irc : irc.rizon.net/#trinity
DB/Achievements: Fix Portal Jockey

Current Status: Portal Jockey(10) is rewarded from 10nh and 25nh, Portal Jockey(25) is rewarded from 10hc and 25hc.
Reason: Achievement-criteria 12971 is required for Portal Jockey(25), but checks for map-difficulty 2=10hc.
On the other side achievment-criteria 12979 is required for Portal Jockey(10), but checks for map-difficulty 1=25nh.

Closes #9081
Ref #6810
Scripts/Mage: Unsummon current mage's Water Elemental before summoning a new one

Closes #8433
Buildsystem/CMake: Revoke commit 7b49da48f9c3c21406fbe350de170757ea6e285f - it creates unwanted results when used with PCh on *nix platforms.
DB/Loot: Fix 9 drop chance in gameobject_template (7 quests should be fixed by this)

If a GO with flags 4 drops a quest item, ChanceOrQuestChance for that items needs to be negative

Query used to find the issue:
```
SELECT * FROM `gameobject_loot_template`
    WHERE (`item` IN (SELECT `questItem1` FROM `gameobject_template` WHERE (`flags` & 4) != 0) OR
           `item` IN (SELECT `questItem2` FROM `gameobject_template` WHERE (`flags` & 4) != 0) OR
           `item` IN (SELECT `questItem3` FROM `gameobject_template` WHERE (`flags` & 4) != 0) OR
           `item` IN (SELECT `questItem4` FROM `gameobject_template` WHERE (`flags` & 4) != 0) OR
           `item` IN (SELECT `questItem5` FROM `gameobject_template` WHERE (`flags` & 4) != 0) OR
           `item` IN (SELECT `questItem6` FROM `gameobject_template` WHERE (`flags` & 4) != 0)) AND
          `ChanceOrQuestChance` > 0;
```
Core/Object: Re-add a line that somehow got removed in a merge

Thanks Warpten for noticing
Merge remote-tracking branch 'origin/master' into 4.3.4
Core/Titles: There are now 4 title fields (only 2 titles for now, Ruthless and Cataclysmic Gladiator).
Also remove some unused outdated defines

WARNING! Run the SQL query before you start your emulator because it will reset all titles on login otherwise
Core/Misc: Remove some calls to const_cast
Core/Misc: Always state what columns are affected by MySQL statements
Core/Misc: Remove using directive from header files (It will eventually lead to name collisions)
Core/Misc: Some changes to minimize differences with 4.3.4 branch
Merge branch 'master' into 4.3.4 (+ some changes to minimize differences)

Conflicts:
	src/server/game/Entities/Transport/Transport.cpp
	src/server/game/Entities/Unit/StatSystem.cpp
	src/server/game/Events/GameEventMgr.cpp
	src/server/game/Globals/ObjectMgr.cpp
	src/server/game/Miscellaneous/Formulas.h
	src/server/game/Miscellaneous/SharedDefines.h
	src/server/game/Movement/Waypoints/WaypointManager.cpp
	src/server/game/Skills/SkillDiscovery.cpp
	src/server/game/Skills/SkillExtraItems.cpp
	src/server/game/Warden/WardenCheckMgr.cpp
	src/server/game/Weather/WeatherMgr.cpp
Add Mute reason and mute by to the db so you can get this info from the db with the pinfo command when player get muted.

old LOGIN_UPD_MUTE_TIME change to LOGIN_UPD_MUTE_TIME_LOGIN due the use of it when character login to world.