Core/Misc: Fix exploit

Fix exploit that allowed to learn spells from recipes without consuming them.
Core/Misc: Fix warning
DB/Creature: Remove more incorrect trigger flags

By dr-j, closes #11995 
Closes #7744
DB/Creature: Add some missing spawns in HoL.
Fix import
Scripts/Ulduar: Fix crash when Algalon's Big Bang is casted by player
Merge pull request #12000 from Dehravor/algalon-big-bang

Scripts/Ulduar: Fix crash when Algalon's Big Bang is casted by player
Core/GameObject: Solve some TODOs related to traps in GameObject::Update and improve logic.

Some more changes, TODO solutions and a fix for traps like those in #1359 or #6388 will follow.
Fix indention from changes in previous commit.
Core/Gameobject: Added missing break in 24ef7dbdf4b76d312cb1df44958c6ccc79bf75f4
Core/GameObject: Format comments and apply rename of previous commit.
Core/GameObject: Store unit in GameObject::SetLootState - required for trap activation.
Core/GameObject: Add missing initialization of m_lootStateUnit
Core/Misc: Fix enchants broken in 3aca9e64b34baee781f402c3f33ad7ee7991c232

Compare cast item entry instead of checking cast item spells to fix the exploit mentioned in 3aca9e64b34baee781f402c3f33ad7ee7991c232 without breaking any functionality.
Core/GameObject: Finish moving activation code of traps to GO_ACTIVATED

Fixing #6388 should be easier now...
Core/GameObject: Fix crash added in c6bf7e0b1d615a22c2145c6f4a757a10a9eca92c

Thanks @jackpoz
Remove unnecessary check in previous fix
Fixed SendAddonMessage issue.

This fixes GM's not being able to send/receive addon messages through the whisper channel while accepting whispers are turned off.
DB/Creature: Fix incorrect flags_extra for 30413

By untaught, closes #12010
Core/Spells: Replace MovePosition by MovePositionToFirstCollision in spell dest target handling.

- Solves issues such as being able to summon creatures inside terrain/gameobjects, being able to fall through terrain by using Shadowstep/Feral Charge (Cat), and much more