Refactor ISessionManager