Das ist im Grunde noch ein Schritt weiter als der andere Thread.
Wir machen das so, dass wir für diverse Funktionalitäten Interfaces bereitstellen indem wir diese an einer zentralen Stelle registrieren. Wollen wir das Interface nutzen, binden wir die Verwaltungsstelle und die
Unit mit dem Interface ein.
Es spricht aber auch nicht viel dagegen (außer der Übersicht und nicht ganz so einfaches Mergen usw.) auch alle Interfaces in eine
Unit zu packen. Da das nur die Interfaces und nicht die Implementierungen sind, sollten sich die Abhängigkeiten in engen Grenzen halten. Dann hättest du es quasi ähnlich wie bisher, nur besser strukturiert.
Die Implementierungen kannst du dann auch auf viele Units verteilen und in mehreren Units alle registrieren. Dann bindest du im Projekt die Registrierungs-Units ein, die du brauchst und fertig. Du musst das aber nicht überall bei der Verwendung machen.