moved lifetime back into a core member and out of module specific state