split the character class into two separate classes - combatant and avatar. avatar represents the logic for an object shown on screen. combatant represents the logic for a battle participant.