* Core/Guild: Fix Guild validation crash on start up

Partially revert 58ec4e531914121144b6f852e3abf27cbb2f6fc4 and increment GuildStore iterator before validating Guilds. This is required because Guild::Validate() removes the Guild from GuildStore if invalid.
Closes #8363
* DB/Misc: Fix few startup errors
* Core/Achievements: Converted save queries to prepared statements
* Core/Vehicles: Add vehicle_seat_flag_unk18 (0x20000) to seat.IsUsableByOverride

Exact definition still needs to be researched
* Scripts/Commands: Check if creature entry is valid before attempting to spawn (fixes unneccessary error in logs)
* Update DBCStructure.h
* Core/Commands: Fix .debug send opcode freeze if file dont exists.
* Core/Spells: add an other condition to SpellInfo::NeedsToBeTriggeredByCaster to correct spells with are wrongly triggered by target instead of caster
- convert archavons rock shards to spellscript (now it works properly)
- add a spellscript for one spell that can't be corrected by this (and delete the sai hack, now i uses the correct spell)
* Fixed build
* -.-
* Core/SAI: Fix typo (i blame germans laziness)
* Core/Battleground: Fix scoreboard

Fix scoreboard broken in 07d793b94b60941ea08fd6170d8165994452c49c . A local variable in a loop stored data of the iterator before incrementing it.
* Core/Condition: Added CONDITION_SOURCE_TYPE_PHASE_DEFINITION define for only 4.3.4 branch
* Scripts/Spells: drop obsolete code
* Core/SAI: Make SMART_TARGET_OWNER_OR_SUMMONER also work for creatures summoned by spells
* Tabs to spaces...
* Core/Guild: Fix memory leak on Guild disband

Fix memory leak when disbanding a Guild, removed from GuildMgr but never deleted. Due to the different ways of how Guild::Disband() and Guild::DeleteMember() are called, each call to these methods has a different way to delete the Guild if empty/invalid.

Valgrind log:
 2,127 (240 direct, 1,887 indirect) bytes in 1 blocks are definitely lost in loss record 54 of 81
  at operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  by guild_commandscript::HandleGuildCreateCommand(ChatHandler*, char const*) (cs_guild.cpp:91)
  by ChatHandler::ExecuteCommandInTable(ChatCommand*, char const*, std::string const&) (Chat.cpp:339)
  by ChatHandler::ExecuteCommandInTable(ChatCommand*, char const*, std::string const&) (Chat.cpp:320)
  by ChatHandler::ParseCommands(char const*) (Chat.cpp:466)
  by WorldSession::HandleMessagechatOpcode(WorldPacket&) (ChatHandler.cpp:217)
  by WorldSession::Update(unsigned int, PacketFilter&) (WorldSession.cpp:317)
  by World::UpdateSessions(unsigned int) (World.cpp:2632)
  by World::Update(unsigned int) (World.cpp:1989)
  by WorldRunnable::run() (WorldRunnable.cpp:60)
  by ACE_Based::Thread::ThreadTask(void*) (Threading.cpp:186)
  by ACE_OS_Thread_Adapter::invoke() (in /usr/lib/libACE-6.0.3.so)
* Core/Battlegrounds: Allow random BG winner/loser rewards to be configurable

Signed-off-by: Machiavelli <machiavelli.trinity@gmail.com>
* Scripts/Blood Furnace: Fix possible compile errors on old VS versions
* DB/Updates: AI fixups

By @Aokromes, fixes #10733 #10728