Enable CairoOutputDev in the Qt backend
I wanted to run the existing unit test for this fix, and therefore I wrote code that allows to use the Cairo backend from the Qt5 bindings, and hence from the Qt5 tests. When I had a working prototype, I discovered #435 (closed), and how political that issue is...
Personally, I don't really see why the Cairo backend shouldn't be available from Qt. My use case is that I want to test the backend with the set of tests in Qt5/tests. These tests exist, and I'd rather use them for Cairo directly rather than reimplementing them using some other bindings.
But I am not going to fight for that. Instead, I tried to take good care to split the MR in small separate commits. Albert, feel free to take what you like, and discard the rest.
Fixes: #435 (closed)