Accept range for list-requiring kwargs in pd.read_csv
`pd.read_csv(path, index_col=range(1))` currently breaks in py3.  This PR fixes that.

There are likely other functions and kwargs for which the same fix would be useful.  I haven't tracked them all down.

Edits to `series` and `frame` are unrelated, but not big enough to merit their own PR.  This is just removing import of `nan, ndarray` that are used in a small number of places and instead using `np.nan, np.ndarray`.

 - [ ] closes #xxxx
 - [x] tests added / passed
 - [x] passes ``git diff upstream/master -u -- "*.py" | flake8 --diff``
 - [ ] whatsnew entry
