Алексей Скобкин, согласен, моя идея плохая с самого начала. Всё идёт от нежелания описывать одни и те же свойства повторно у одной сущности, да ещё и в разных местах. Можете скинуть ссылку на то, что Вы имеете ввиду под "генерацией описания класса"?
Поведение базового класса не меняется, а по сути дополняется. Если бы в подключаемых классах были бы только свойства было бы просто. Но тут есть ещё подключаемые методы, которые сложно назвать данными.
Наверно в итоге, как и в вашем совете, сделаю по принципу композиции, так как название класса можно задавать динамически и названия методов заранее известны. А свойства просто запишу в текущий класс перебором.