Session container object.
If we will implement sessions with Tornado timeouts, for polling transports it will be nightmare - if load will be high, number of discarded timeouts will be huge and will be huge performance hit, as Tornado will have to clean them up all the time.
Add session to the container.
Expire any old entries
Optional time to be used to clean up queue (can be used in unit tests)
Return session object or None if it is not available
Remove session object from the container
Represents one session object stored in the session container. Derive from this object to store additional data.
Optional session id. If not provided, will generate
new session id.
Expiration time. If not provided, will never expire.
Check if session is still alive
Triggered when object was expired or deleted.
Mark object as alive, so it won't be collected during next run of the garbage collector.