RTT>Реализацию интерфейса для каждой подсистемы можно вынести в отдельный класс. Поскольку наличествует иерархия, и довольно существенная, неизбежно возникает соответствующая иерархия классов реализации. И так для каждой подсистемы. Достоинство: уменьшенная связность, реализация для каждой подсистемы в отдельном файле, уменьшив инклуды сторонних тулкитов.