* Allows switching between different combat styles, and updates the
combat tabs styles for every equipped weapon. If a weapon with a
special attack is equipped, the special bar for that interface will be
shown.
* Adds a scheduled task which periodically restores special energy to
the player and updates their special bar.
* Uses a hierarchy of WeaponClasses -> Weapons for performing attacks,
with WeaponClass having a set of styles and associated Attacks for
those styles. Weapons and their classes are built with an easy to use
and clean DSL.
* Adds a BonusContainer mixin, so that Equipment, Weapons, and
WeaponClasses can all have their own set of bonuses which apply to the
player.
* Allows attacks to be queued to the Mobs CombatState instance from
external code, allowing e.g., NPCs or auto-cast to queue attacks to be
executed.