put common respawn handling code (outside of core function Being::respawn() into a new function, Being::doRespawn() so that it can be shared