Optional UserAgent control was added to prevent session hijacking. If something goes wrong while creating or reading a session, an "E_USER_ERROR" error is now triggered.
Code was rewritten. The code was cleaned up. The Singleton design pattern is used. Several comments in the phpDoc style were written. Several new methods were added. The database structure was changed. The code was changed to use PDO.