API break with DataFrame.rename
Posted in https://github.com/pandas-dev/pandas/pull/17800#issuecomment-338989093, but making a new issue to make sure it's not lost and that everone is aware, and to check if we're comfortable with this:

```python
df = pd.DataFrame(columns=['A', 'B'])
df.rename(None, str.lower)
```

In previous versions that meant `.rename(index=None, columns=str.lower)`, but now it's `.rename(mapper=None, index=str.lower)`. I think this is fundamentally ambiguous correct? This is breaking dask, which used positional arguments, but I suspect it'll break more code.

cc @jreback @jorisvandenbossche 
