Ability && Misc

Ability:
Added ClusterConditions Class and replaced old Tuple.
Added AbilityWait Struct and replaced old Tuple.
TargetConditions -- LowHealth renamed to Weak, and now tests the average
maximum health of the unit.
RuneIndex now gets the cached value from the bot class, and is no longer
settable.
Fixed HasFlag on criteria for None by using Equals instead.
CanCast will now check flags for not enough resources and flag Waiting
for special. (Same as CheckEnergy Flag).

Avoidance & Kiting:
Avoid/Kite Movement will stop reusing if the distance is less than 2.5f.
Avoidance Movement takes priority of kiting now.
Item weighting will check if nearby monsters would trigger kiting.

Monk:
Mantra ability is now considered Special and will wait for energy.
Tempest Rush ability has been retouched to work properly.

Witch Doctor:
Spirit Walk will be used if kiting or avoiding too.

Misc:
Moved IsPositionWithinRange from CacheObstacle into CacheObject.
Added many non-targetable destructibles from A3 Keep Dungeons to cache.
Added WaitTimerTag to the Out-Of-Combat Behavior Hashset.