remove the backend logic

backends are now instantiated by the core and received as plugin arguments