Scripts/Icecrown Citadel: Fixed Muradin/Saurfang attacking each other during Gunship Battle

Closes #11786
Core/SAI: Implement two new event types that are triggered when a certain creature/gameobject entry or guid gets within a given distance of the source.
Core/SAI: Only allow SMART_EVENT_TARGET_BUFFED to be used from creature sources.
Core/SAI: Allow only creature sources to use the event types SMART_EVENT_DISTANCE_CREATURE and SMART_EVENT_DISTANCE_GAMEOBJECT for now.
Quest: The Power of the Elements

Remove hack SAI, use aura script
Fix non-pch build and remove blank line
Quest: Direhorn Raiders

Remove duplicate kill credit
Core/Misc: Fix some static analysis issues

Fix uninitialized values, most of which are false positives, always initialized before being accessed.
Add some asserts and additional NULL checks as sanity checks. Use SpellMgr::EnsureSpellInfo() if the spell id is valid and always supposed to return a valid not-NULL SpellInfo* .
Core/Battlegrounds: Fix log errors about creatures not found

Move "Battleground::GetBGCreature: creature not found for BG" error log to INFO level when the caller expects no creatures to be found, like on Battleground startup.
Closes #3538
Core/Dependencies: Upgrade to jemalloc-3.5.1