Implements more sophisticated explosion animation/sound system

Explosions can now use different art for various situations (ground, water, air, ground target hit, water target hit, air target hit).
Should become
```public readonly ImpactType ValidImpactTypes = ImpactType.Ground | ImpactType.Water | ImpactType.Air | ImpactType.GroundHit | ImpactType.WaterHit | ImpactType.AirHit;```