Refactored common Player/Monster functionality into Character