но потом мне стало совсем ничего не понятно - чего это у меня один и тот же класс будет всем подряд заниматься. Там и без того уже сборная солянка - и регистрация, и проверка текущих кукизов, а тут еще и ..
Именно в этом состоит разница между двумя основными архитектурами ORM - Active Record и Data Mapper.
Data Mapper разделяет работу с бд и бизнес-логику самого объекта. В итоге мы имеем два объекта - UserMapper и User. UserMapper занимается общением с базой - ищет в БД и возвращает инстанс объекта User, обновляет данные в БД, удаляет строку из БД. Класс же User реализует только бизнес-логику, ничего не зная о том, как его данные хранятся в БД.
Active Record же держит все в одном классе, то есть сам юзер ищет себя в базе, удаляет, и так далее.
Я думаю, сейчас настало время перейти к варианту Data Mapper.