Added a session layer between the session drivers and the other classes