DB/Quest: Tirion's Gambit

Script for chosen zealots is not perfect as this should surround player/tirion in a circle but cant think of anyway other than every chosen zealot having its own wp and sai.

Closes #10474
Scripts/UtigardePinnacle: Prevent Ymiron from triggering a phase transition at death

...caused by the health percent multiplers used to check transitions
DB/Creature: Delete incorrectly spawned Felhunter
Scripts/ManaTombs: Nexus-Prince Shaffar rewritten to BossAI/EventMap
Core/Debugging: Extended ASSERT macro to allow passing additional formatted string
Scripts: Fixed compiler warning
DB/Quest: Fix LimitTime for Quest "Bark for Drohn's Distillery!" / "Bark for T'chali's Voodoo Brewery!" / "Bark for the Barleybrews!" / "Bark for the Thunderbrews!"
Core/Spells: Always add threat for spells from spell_threat table, not only if target was hit. Unsuccessful cast results in 0 threat added instead of the full amount and creating threat list entry for caster. This fixes various exploits with taunt spells bugging out scripts due to taunt immunity/passive state (creatures would immediately evade resetting script state if no entries were present on threat list - entry with no threat is not the same as no entry)

Closes #11883
DB/Brewfest: Fix quest start for "Bark for T'chali's Voodoo Brewery!" / "Bark for Drohn's Distillery!"
To/Do: Fix quest kill credit
Core/Misc: Refactor scripts to fix static analysis warnings

Last issue to be fixed, fixes #12960