split G_AddEvent in 2 more specialized functions, added some todo were G_AddEvent is still present
enhance type safety of G_ForceWeaponChange
started an unfinished cleaning of weapons.c