Moved more functionality out of the model to the Player class.