Damage updates, type annotations to Weapons.hs

Updated Damage as physical and stun damage appear to be mutually
exclusive, and added type annotations to functions in Weapons.hs