RcParams instances for matplotlib.style.use

External libraries may want to prepare styles dynamically. For example, `brewer2mpl` provides various colormaps. While it could create it's own context manager for temporarily changing the `color_cycle`, I think it makes more sense if `matplotlib.style.use` can work directly with `RcParams` instances.

```
>>> with matplotlib.style.context(matplotlib.RcParams(**{'text.usetex':False})):
...     print matplotlib.rcParams['text.usetex']
...      
False
```
I really don't like the `isinstance` checks and if they stay they should be against `dict`.

I would do this as some thing like

```python
if cbook.is_stling_like(name):
    ....
else:
    try:
        mpl.rcParams.update(name)
    except ValueError:
        pass
```
```