Numindexname
- [x] closes #12309
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entries: name passing, unsupported `dtype`s, `copy=true` for `DateTimeIndex`

This is a rebased & updated version of #12331

I would say the [last commit](https://github.com/pydata/pandas/pull/13205/commits/cd89efc88afd6fc5b0e973da4338cefdbea52d51) is the most critical one: it exposes the consequences of making numeric indices only support their default `dtype`. By the way: I had interpreted [your comment](https://github.com/pydata/pandas/pull/12331#discussion_r54882912) as "raise if `dtype` is set", but I don't think this is what we want, since it breaks the obj -> str(obj) -> obj roundtrip. So I raise only if `dtype` is not the expected dtype.
