Instead of having a ctor which takes the backend, it's a ctor which takes all the information needed from the backend.
The aim is to be able to create a plugin for each of the backends. The following directories are created: * backends/drm * backends/fbdev * backends/wayland * backends/x11