Got NPC control working. Added getController(...) method to PlayerControlMap so I can stick with my method of having getPlayer(...) return the slave if the original player is controlling the NPC.