If you use interposers then you don't need all that. You just declare the interposer and use the unit where it's declared (or declare it in the unit where you use it). That's the point of it: You don't need to change the existing forms and often not even the code.
When I use interposers to fix bugs in existing components (mostly VCL), or alter their behavior, I place the interposer in a separate unit and use that. When I need to alter a few controls on a single form I just declare the interposer in that forms unit. Problem solved, next case.
I'm not saying one shouldn't use proper design-time registered components, I still consider interposers somewhat of a hack, but given the hassle of maintaining design-time packages across multiple projects and versions, interposers are a blessing.
In order to remove the need for interposer classes Delphi would need:
A package management system that allowed us the define per project design-time packages.
The current project package configuration doesn't work. It still operate on a global package list.
A mechanism to redirect the class resolver when forms are streamed.
Since it already uses a global class registry when streaming a form it shouldn't be that hard to implement.
I do wish the VCL had an official mechanism to solve the same problems that interposer does - but it doesn't.