Currently, the internals are tightly coupled. It would be better if the Interfaces would allow for plug &play of different Implementations