[WIP] Make conftest remove tests instead of skipping.

Fixes #976.

Let's see if this workaround actually works. 
pytest adds attributes to `metafunc.function` corresponding to the pytest marks that are set. This code appears to loop over the set of known marks and, if the attribute is present, tests the backend to see if it has the interface required.

Looking at the `metafunc.function` (which is just a function object) we could do this with `__dict__` as well, although I assume that'd be frowned upon.