Core/AccountMgr: Fix memory leak on account creation

Fix .account create command not deleting a MySql PreparedStatement .

Valgrind log:
 254 (40 direct, 214 indirect) bytes in 1 blocks are definitely lost in loss record 6 of 8
  at 0x4C24DFA: operator new(unsigned long) (vg_replace_malloc.c:261)
  by 0x998EC2: DatabaseWorkerPool<LoginDatabaseConnection>::GetPreparedStatement(unsigned int) (DatabaseWorkerPool.h:437)
  by 0x99599B: AccountMgr::CreateAccount(std::string, std::string, std::string) (AccountMgr.cpp:49)
  by 0xF3ABAC: account_commandscript::HandleAccountCreateCommand(ChatHandler*, char const*)
Core/DB: Make a26a24a consistent with Trinity code style

Change DatabaseWorkerPool<T>::DirectExecute() to handle PreparedStatement disposal in the same way of DatabaseWorkerPool<T>::Query() , thanks Joschiwald for patch.
Core/Guild: Fix withdraw money from bank overflowing int32 limit

Clamp amount of money withdrawn from bank to MAX_MONEY_AMOUNT to avoid int32 overflow which would remove money from Player instead of adding it.
Scripts/ScarletEnclave: Fix uninitialized values in Highlord Darion Mograine

Reset() has if checks on values that are initialized after them so it's required to initialize these fields in the constructor.

Valgrind log:
 Conditional jump or move depends on uninitialised value(s)
  by 0x11CF472: HashMapHolder<Creature>::Find(unsigned long) (ObjectAccessor.h:67)
  by 0x11CE36F: Creature* ObjectAccessor::GetObjectInWorld<Creature>(unsigned long, Creature*) (ObjectAccessor.h:114)
  by 0x1257C13: Creature* ObjectAccessor::GetObjectInMap<Creature>(unsigned long, Map*, Creature*) (ObjectAccessor.h:135)
  by 0x12E64F1: Map::GetCreature(unsigned long) (Map.cpp:2767)
  by 0x10AF4DE: Unit::GetCreature(WorldObject&, unsigned long) (Unit.cpp:13021)
  by 0x16F8F81: npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::Reset() (chapter5.cpp:386)
  by 0x16F8D36: npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::npc_highlord_darion_mograineAI(Creature*) (chapter5.cpp:314)
  by 0x16F8CD6: npc_highlord_darion_mograine::GetAI(Creature*) const (chapter5.cpp:307)
  by 0x132AF6C: ScriptMgr::GetCreatureAI(Creature*) (ScriptMgr.cpp:796)
  by 0x1441D45: FactorySelector::selectAI(Creature*) (CreatureAISelector.cpp:41)
DB/SAI: Eyes of Grillok

By @dr-j fixes #10909
Core/Script:
ICC: Convert possible non valid pointer to guid

Close #9954
Merge pull request #10875 from zorix/PR2

Core/Script:
DB/SAI: Zeth'Gor Must Burn!

Fixes #10904 by @untaught
Core/SAI: Using SMART_TARGET_NONE no longer works the same way as SMART_TARGET_ACTION_INVOKER but rather return NULL instead.

Fixes #10908
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore
Scripts/SteamVault: reworked InstanceScript
Core/Logs: Random changes
DB/SAI: Non-repeatable flags change & credit circumvention

By dr-j fixes #10929 fixes #6444
Core/AI: Fix uninitialized values and array overflows in SAI

Proper initialize POD struct members to 0 in SMART_ACTION_CREATE_TIMED_EVENT action type.
Fix array overflows and access uninitialized values in SMART_ACTION_CALL_RANDOM_TIMED_ACTIONLIST, SMART_ACTION_RANDOM_PHASE and SMART_ACTION_RANDOM_EMOTE .

Valgrind log for SMART_ACTION_RANDOM_PHASE case:
 Conditional jump or move depends on uninitialised value(s)
   at : SmartScript::UpdateTimer(SmartScriptHolder&, unsigned int) (SmartScript.cpp:3086)
   by : SmartScript::OnUpdate(unsigned int) (SmartScript.cpp:3176)
   by : SmartAI::UpdateAI(unsigned int) (SmartAI.cpp:335)
   by : Creature::Update(unsigned int) (Creature.cpp:542)
   by : TempSummon::Update(unsigned int) (TemporarySummon.cpp:47)

 Uninitialised value was created by a stack allocation
   at : SmartScript::ProcessAction(SmartScriptHolder&, Unit*, unsigned int, unsigned int, bool, SpellInfo const*, GameObject*) (SmartScript.cpp:143)
Merge branch 'master' of github.com:TrinityCore/TrinityCore
Core/SAI: Get rid of unused parameter 'storageId' (third) in SMART_ACTION_SUMMON_CREATURE. This means the 4th parameter (actionInvoker 0/1) must move back one parameter. On a clean TDB there is not a single case of this parameter being used.

Updated wiki accordingly.
Merge pull request #10933 from MitchesD/SteamVault

Scripts/SteamVault: reworked InstanceScript
Core/Scripts: added some OVERRIDEs
DB/Update: Quest credit fix-up

Vehicles will not accept quest credit in the form of a spell cast, credit needs to be a monster kill.
DB/SAI: Wanton Warlord

Fixes #5126 by @dr-j