Issue title: Set Agg backend?
 Issue body: Does it make sense for pytest-mpl to set the backend to "Agg" in there somewhere? I don't see a usecase where it doesn't make sense, but that doesn't mean I'm not missing something. I just want to make my tests able to run headless a bit more easily.
 Comments: 
 Comment 0: @dopplershift - I agree that would make sense.
 Comment 1: So I'm not sure what the best approach is here, and I've played with a few today:
1. Put `matplotlib.use('agg')` right after `import matplotlib`
    It has to be that early because `import matplotlib.testing.decorators` triggers an import of `pyplot`, which will lock the backend setting. I feel a little odd of locking in a particular setting disallowing pdf, ps, etc.

2. Add a `'backend'` kwarg to `mpl_image_compare` and use `pyplot.switch_backend` "experimental" functionality.
    Will only work for non-GUI backends, but at least makes things flexible. This would involve repeating code that's in `matplotlib.testing.switch_backend`, but unfortunately that version imports `nose`. Not sure about basing it on functionality that's called "experimental", but it really should be fine with the image backends.

3. Just avoid having pytest-mpl trigger an import of `pyplot`.
    Remove the import of `matplotlib.pyplot` at the top level since `style` can be accessed directly from the `matplotlib` import; remove the unused import of `cleanup` from `matplotlib.testing.decorators`. Copy in the implementation of `remove_text` from matplotlib. At this point, this will at least allow tests to be able to call `matplotlib.use()` and have it work.

Thoughts on which way you prefer? I'm somewhere between 2 and 3 I think.
 Comment 2: Thinking about this some more, I think 1 is definitely out - it is possible that codes that have e.g. Qt GUIs with Matplotlib (e.g. Glue) might also want to have image tests, and therefore might not want to use the Agg backend globally throughout the tests. So I think 2 or 3 sound more promising.
 Comment 3: While the purist in me likes 3, I kind of like 2 so that I don't have to worry about anything if I just want Agg (and we make that the default). I think in that case I would add a `matplotlib.use('Agg')` to `ImageComparison.__init__` so that in that default case we can actually check and avoid doing the switching if nobody asks for anything else.
{'source': 'GithubIssues', 'repo_name_with_owner': 'matplotlib/pytest-mpl', 'issue_id': 192481397, 'repo_stars': 129.0}