redesign the player_class thing and fix a stupid bug on the way