MusterCull - Large changes to hard-cap culling strategy.
In the case where we must perform a global cull to keep under our hard-cap
(mainly cases where we lower mob count OR chunks that push us over are loaded)
we were previously performing a completely random purge.  A horse had as
much chance to be culled as a cave spider.  This has been changed.
We have introduced a new culling strategy - priority based - that
will attempt to keep things in descending priority order.  Categories range
as follows:  {Named Mobs}, {Leashed Mobs}, {High value persistent mobs
- horses, villagers}, {Medium Value persistent mobs - wolves, colored sheeps,
cats}, {low value persistent mobs - cows, chickens, white sheep}, {non-
persistent mobs}.
We have also introduced the concept of a penalty purge specifically to deal
with chunks that have an inordinate amount of mobs loaded compared to
the server cap as a whole.  This is configurable based on a percent to trigger
a penalty purge.  An example may be useful - in the case where we have
a mob cap of 1000 mobs and a penalty percent of 15, we would first target
the largest chunk that has 150 or more mobs and is out-of-whack with the
average mob per chunk of the other server chunks.  In this case, we would
purge according to our purge rules to bring this down a reasonable limit
and then we would purge serverwide according to our purge rules.  This is to
combat someone loading a chunk with high value mobs and being able to cull
every other mob on the server by simply loading it at will.  This does mean,
however, that if someone has a super-chunk (7x7) with > 15% mob cap horses
in it and we hit a global cull scenario, we could have their horses culled
down to a reasonable limit (to bring it in line with average-mob-per-chunk
of the rest of the server) before we start targeting lower value mobs elsewhere.

As these changes are fairly extensive compared to previous implementation, you
can select which culling strategy to use.  If you prefer to have a straight
random chance, you can set the culling strategy to RANDOM to continue
with performance as it has been.  Otherwise, setting this to PRIORITY will
global-cull according to the rules listed above.

NOTE:  this expressly does not modify the behavior of the any culling besides
our global-cull based on the hard-cap limit.
NOTE:  no new commands have been added with this change.
MusterCull - Minor tweaks to priority and refactoring, status and new command.
- Updated priority for muster cull to remove leashed mobs from priority list.
- Refactored a bit around "getting living non-player mobs" to remove duplication.
- Added hard culling information to /mcullstatus.  This includes runtime, average
runtime, number of times a cull has happened, and how many times a penalty
purge is part of said cull.
- Added command to change purge strategy - /mcullhardlimitstrategy - which takes
either PRIORITY or RANDOM.  This will switch the culling strategy appropriately.
- Forced the ticks between hard cap damage to ignore any value set less than 200.
- Updated documentation.
Mustercull - Fixed failing test case regarding hard limits.
Discovered that the hard cap purge interval was not what was being used
to output logging in the hard cap set routine.  It was actually using
the damage tick.  When I updated the code to make use of this for more
than output data, this ui level defect modified other settings inappropriately.
Fixed.