Issue #2351729: Add container aware classes.
Issue #2351729: Use correct interface.
Issue #2351729: Use correct function from plugin manager.
Issue #2351729: Add ContainerAwarePluginManager and tests.
Issue #2351729: Register plugins within the DIC.