Abstract out shared stuff from NPC and Player into Human