Modifes damage system

Changes behaviour of mortals.
They now broadcast die while they're dead, rather than just when they
die.
Adds hitEffect property and HitEffect() function to create fx when
struck by DealsDamage scripts

Adds DealsDamageOverTime behaviour

Adds framework for loading weapon data from table
Adds set property to a lot of weapon properties
Adds reload finish property to weapon
Creates a hitscan projectile if none are assigned

Adds TLerp extension to floats and Vector3s
Adds AddComponent and GetComponentOnOrAbove functions components

Adds flatten extension methods to QuaternionF
Adds animation curve class