A simple factory class that instantiates concrete {@link Session Session} instances. This is mainly a mechanism to allow instances to be created at runtime if they need to be different the defaults. It is not used by end-users of the framework, but rather those configuring Shiro to work in an application, and is typically injected into the {@link hunt.shiro.mgt.SecurityManager SecurityManager} or a {@link SessionManager}.