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)
Merge git://github.com/EQEmu/Server into Custom

Conflicts:
	zone/aa.cpp
	zone/client.cpp
	zone/client.h
	zone/npc.cpp
	zone/perl_mob.cpp
	zone/spells.cpp