Problem dotyczący session_handler

Mam sobie taką klase session_handlera wraz z przykładem użycia:

Niby wszystko ładnie, po odpaleniu zapisuje w bazie id sesji, czas rozpoczęcia, czas i wartość.

Problem w tym, ze:

1. nie usuwa przeterminowanej sesji z bazy

2. po uruchomieniu skryptu w nowym oknie/lub innej przeglądarce, nie tworzy nowego wpisu dla nowego session_id, tylko nadpisuje stary

Czyli w bazie widnieje tylko jeden wpis, a powinno być tyle ile otwartych sesji.

Co poprawić by wyeliminować te problemy?