We can't clear the sessions fotxn memory as part of closing a session,
shuffle things around so we don't clear the fotxn memory in the same
way we don't clear the hazard pointer.

We can't use a session handle after it's been cleared, pass the fotxn
discard function a "safe" session handle along with the session handle
we're cleaning up.