weapon type define the class, because changing weapon type change the class.
Give the current classes another new weapon type and the types of weapon for future classes get limited.