а как доходит до объектов всё ступор. Подскажите, с чего начать?
Для начала понять, что в объектах не так для вас?
В целом, с точки зрения процедурщика - объект это набор функций и переменных, просто объединенный в единый код (например отдельный файл со всеми переменными и функциями обработки), относящийся к конкретному объекту реального мира. Вместо подгрузки этого файла в коде будет вызов создания объекта(например vasea = new User()), причем при создании автоматически можно что-то сделать, например вытащить из бд юзера с определенными заданными данными (например vasea = new User('vasea','pupkin')), через конструктор.
Кроме того, т.к. код попадает в память только при создании объекта, соблюдается правило "платим только за то что используем", а не как при глобальных переменных и функциях - фигачим все, потом юзаем 1-2 функции.
И структура - ооо, это такой кайф - все функции привязаны к конкретным объектам, если ищешь логин пользователя - идешь в пользователя и только туда, правишь 1 строку - и все сразу работает везде! Короче - нужно вникнуть и ощутить )