[11964] Implement new conditions system

Tree-like design idea by Faramir118, thanks for that!

* Add `conditions` table to store conditions.
* REPLACE current handling of conditions for the *_loot_template tables
  Convert the old conditions in *_loot_template to the new system by SQL-Queries
* ADD support for new conditions to gossip_menu and gossip_menu_option.
  If for these tables no condition_id (new system) is provided, the old conditions will still be used
* Add a small helper python script to contrib/convertConditions, see README there for details
* Add new command to reload the `conditions` table (.reload conditions)
* Add two Meta-Condition types CONDITION_AND (-1) and CONDITION_OR (-2) which are used as:
  value1 (as condition_entry) AND / OR value2 (as condition_entry)

  With these meta-conditions it is possible to create tree like and very complicated combined conditions (like HasAura && (HasItem || HasQuest))

NOTE about conversion:
For easier convertion all the old table data is still preserved, but will be removed eventually (within a circle of the moon approximately)
The python script will not create an optimal initial fill of the `conditions` table. You might want to tweak it manually or suggest some optimized algorithm :)

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
[11965] Tweak comment about default config values
[mr1904] Use LockedVector in StateMgr storage v0.2, thx to Undergarun. remove some redundant locks. close #924
[mr1905] Additional checks in SCRIPT_COMMAND_ATTACK_START, part 2. close #932 #924
Merge branch 'master' of https://github.com/mangos/mangos

Conflicts:
	src/mangosd/mangosd.conf.dist.in
[11966] Replace an ASSERT to prevent unnecessairy crashes

GetAngle can be called for self from very many places, not only DB-errors, hence adding the assert is too strong in the moment

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
[mr1906] correct handling for Check Sated & Exhaustion debuffs if horde and ally fight together
[mr1907] remove tempfix of 11954. If someone notice problems with spells, post id into this commit.
@developer: We can handle exceptions in this for-loop.
[mr1908] Rewrite EventProcessor on LockedVector base, v0.2. close #829.
[mr1909] Fix build on VC90.
[mr1910] Fix build on VC100. not tested by me.
[mr1911] define SPELL_ATTR_EX3_TARGET_ONLY_PLAYER and use it!

Big Thx to Schmoozerd
https://github.com/wow4you/mangos/commit/d679c679f2ee7c1fc4a853ca65c0989985a8b2cc

( Fix a lot of aoe spells with should only hit players, like 63342, 28089)
maybe we should implement addtional code in SpellCastResult Spell::CheckCast(bool strict)
Revert "[mr1908] Rewrite EventProcessor on LockedVector base, v0.2. close #829." Needs more work :(

This reverts commit 75a92959b781c33744402a97f0f01253deb9e0c6.
Revert [mr1909], [mr1910]

This reverts commits b7bc95fe7ad3bb6e3be4232343ec368c82552540  b3bfc872990f3e3bd86d412df6d9f14b62f1cd05
Always use newline at end of file for SQL files.
[mr1912] use DamageInfo in resist/absorb calculation. may have unexpected results. testing.
[mr1913] Implemented SPELL_ATTR_EX4_IGNORE_RESISTANCES (originally from Subv, TC). - this not fully correct attr usage, mut must give sufficient result on some spells.
[mr1914] continue improve LockedVector class - T* find() method.
Merge branch 'master' of github.com:mangosR2/mangos
[11967] Fix mangos.sql. Thanks to NicolasQuasar for pointing. Fix issue #45