BUG: shared doc string decorator doesn't handle args defined with sets
I was exploring using a shared docstring decorator today and came up with the issue that the pandas notation for parameter sets is the same as needed for string replacement. So for example:

```
@doc(param1="some_value")
def test_doc_replacement(self, set_ars):
    """
    Description of {param1}

    Parameters
    ----------
    set_args : {'str1', 'str2_or', 'str3'}
        string values from a set.

    Returns
    -------
    A KeyError!!
    """
    pass
```

Yielded a KeyError, since its tries to find a key `"'str1', 'str2_or', 'str3'", in my docstring parameters.
The way I'm attempting to get around it is:

```
@doc(param1="some_value", set_args="{'str1', 'str2_or', 'str3'}")
def test_doc_replacement(self, set_ars):
    """
    Description of {param1}

    Parameters
    ----------
    set_args : {set_args}
         string values from a set.

    Returns
    -------
    Hopefully the right display.
    """
    pass
```

Incidentally anywhere in the docs that a `{}` appears seems to be a problem. So in my examples section I also had to try changing:

`>>> df = DataFrame({'A': [1,2], 'B': [3,4]})`

to 

`>>> df = DataFrame([[1,3],[2,4]], columns=["A", "B"])`