Updated and improved handling of damage effects

- Added new interface, IPostDamageEffects, to allow automation of
secondary effects like stun, slow from cold, etc.
- Updated and modified new DamageSource types to be more versatile,
allowing custom duration and amplifier
- Added STUN as an EnumDamageType
- IDamageSourceStun now extends IPostDamageEffect