Revert "Core/Entities: Do not create the model twice for a GameObject."

This reverts commit 0f166336caaf33eb01cffe19d5bb49f729d8d22d.
Core/Commands: Allow .modify money to take another parameter structure:

Example uses:
* .modify money 325g 25s 12c is the same as .modify money 3252512
* .modify money -12g is the same as .modify money -120000
* .modify money -12g 45s is the same as .modify money -115500
* .modify money 25c 18g is the same as .modify money 18g 25c
Merge pull request #8064 from Warpten/modMoney

Core/Commands: Allow .modify money to take complex parameters
Cleanup PetAI, remove unnecessary and broken JustDied(). Closes #7242

Thanks to Oiler2112 for suggestions and testing.
Scripts/Ruby Sanctum:

* Fixed Halion's health pool in the Twilight Realm.
* Updated missing expansion fields for Saviana Ragefire, General Zarithrian.
* Have Halion bind players to instance on any other mode than 10NM.
* Link template entries depending on difficulties.

Closes #8017.
Closes #8024.
Core/Spells: Fix power drain effect for heroic versions of spell 70759 (72015, 72016) - thanks to Shauren
Merge pull request #8067 from Elron103/pull-requests

Core/Spells: Fix power drain effect for heroic versions of spell 70759 (72015, 72016) - thanks to Shauren
Merge pull request #8065 from MrSmite/PetAI_Cleanup_1

PetAI Cleanup
Merge pull request #8066 from Warpten/halionUpdate

Scripts/Ruby Sanctum:
Merge pull request #8053 from tibbi/rep_fix

renaming GetBaseReputation used for offline players
Update THANKS file

Don't complain about duplicates / invalid names, they were extracted & parsed from commits
Core/SpellMgr: Replace magic number by constant

Thanks 2010phenix
Core/Spells: Fix a possible crash in Light's Beacon when a player logged in with the aura.
Scripts/Halion: Fixed some warnings
Core/Battleground: Allow players to start capping flags stealthed or invisible - gameobject should remove the stealth/invis aura on use.
Core/PacketIO: Automatically set field count in SMSG_INIT_WORLD_STATES instead of manual switch.
Core/Ticket:

- Fully parse CMSG_GMTICKET_CREATE, use GmTicket::GetChatLog() to access the reporters chat log from this session (unused atm, possible useful to detect chat harassment)
- Simplify SMSG_GMTICKET_GETTICKET and fix "category" field (renamed it same as in blizz LUA files)
- Store response in DB
DB: Add gm_tickets changes to base character db
Core/SpellAreas: Changed the way quest_start and quest_end works.
They now follow this rule:
The player's quest status of quest_start must have the mask defined in quest_start_status in order for the spell to be applied/kept.
The player's quest status of quest_end must _NOT_ have the mask defined in quest_end_status in order for the spell to be removed
To generate the mask:
Take the QuestStatus enum in QuestDef.h, use (1 << theValueYouWant) to obtain a mask and you can use | to combine masks.
This expands the usage of the spell_area table, making possible to give a player an aura while he has a quest, but remove it as soon as the quest is completed (not rewarded).
Feature request by @Svannon
Core/BG:

- Force removal of stealth and invisible auras when using gameobjects with type GAMEOBJECT_TYPE_FLAGSTAND and GAMEOBJECT_TYPE_FLAGDROP
- Do not allow players to use unfriendly battleground objects (prevents flag cap with Nitro Boosts active for example)