Updated swarm pet AI to be consistent with live.

*OLD AI: Swarm pet would lock on to target until target died, then depop as soon as target died.

*NEW AI: Swarm pet will attack cast on target, NOT perma locked it can change targets if attacked
by something else that generate more hate. When target dies swarm pet will follow owner, if owner is
attacked by something else the swarm pet will attack it (until duration timer despawns the pet).

Updated perl quest function: MakeTempPet(Tspell_id, name=nullptr, duration=0, target=nullptr, sticktarg=0)
Implemented perl quest function:  Mob::TypesTempPet(npctypesid, name=nullptr, duration=0, follow=0, target=nullptr, sticktarg=0)
Note: 'sticktarg' field will cause the swarm pet to use the OLD AI

Rule to use OLD AI only - default is disabled.
Optional SQL: utils/sql/git/optional/2014_11_15_SwarmPetTargetLock.sql
Implemented NPC Special Ability 41 'Allow To Tank', gives NPC opportunity to take aggro over a client in melee range.
Merge git://github.com/EQEmu/Server into Development
i hate the change log
SUB EVENT CAST ON will now be parsed in player.pl
(note: exports $spell_id)
Fix for perl CastSpell function so it will use a spells innate resist diff
settings if no override value is put in the function.

Due to recent changes in
how we defined that variable it would set it to 0 resist diff by default
when called from perl.
Merge pull request #292 from KayenEQ/Development

Updated swarm pet AI to be consistent with live.
Fixed bad formatting of client.h and merc.h caused by my last commit.
Fixed merge
Added special ability functions to perl, removed some of the less used commands (and a few duplicates)
Slight fixes to upgrade logic - If you ran updates manually yourself, and you don't have a local version that matches the binary version yet. It will go through and get you up to date.
Manifest changes - Removed AA 'Required' updates. We will soon have an option to pull them down from PEQ in the prompt menu
Upload of peq_aa_tables.sql for db management interface
Fix for GetTradeRecipe results variable overload instead of reuse
PEQ AA Download option 4 implemented - http://i.imgur.com/OBrIOCM.png
Merge pull request #295 from Leere/getrecipefix

Fix for GetTradeRecipe results variable overload instead of reuse
Add see invis check to tracking packet