refactored SessionImpl

SessionIdLoggingContext is disposed at right moment. Using task array
instead of list