CLEANED UP: moves player and weapon related code to player class.