Fixes issue #222.

Removing unused classes (TableMetric, TotalWeapons and TotalAmmoSupply) and their unit tests.
Breaking out parts of HeatOverTime into more generic classes that are used in implementing BurstDamageOverTime too.
Adding new method to MessageXBar.Message to allow querying if the message would affect the DPS or heat stats.