Implemented a basic session interface. I intend to let this class be sub-classed, so I've used LSB.