Ну да, лоадер наследуется, но он является только легковесной обёрткой, чтобы завести основной компонент. Сам основной компонент не тянет зависимости от фреймворка.
Можно, но не вижу необходимости ) При смене фреймворка на другой или апгрейде версии, надо будет только лоадеры поменять, на каждый лоадер работы на пять минут. Этих компонентов вряд ли будет больше пары десятков. В общем задача очень простая )
Наследование от компонента позволяет удобно описать подключение компонента в конфиге и заодно в том же конфиге прокинуть параметры окружения и настройки.
А он и не зависит. Есть небольшая прослоечка-адаптер. Можно сделать 10 таких под каждый фреймворк и код самого компонента не менять. И юнит-тестами покрывать только сам компонент, не завязываясь на фреймворк.
1. В лоадере ) Всё будет инкапсулировано там. Если ты про зависимости то их на себя берёт DI контейнер. Он разруливает зависимости по цепочке в момент создания лоадера.
2. Нет, не должен конфиг меняться если настройки не поменялись
1) Тут больше вопрос про параметры которые приходят из конфига. Если брать на примере Yii то для того чтобы сконфигурировать их тебе надо объявить их как public и уже получается что не феншуй