Add plugin system & factory for plugins.