Fixed Session.Deserialize exceptions not throwing properly

as described in #6168 we don't get enough data to fix the crash, because the crash itself crashed. This makes everything go through Program.FatalError for complete logs and end user instructions what to do.