BUG: Index.copy() honors 'name' parameter (#14302)
- [x] closes #14302 
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/14303?src=pr) is 85.26% (diff: 88.46%)

> Merging [#14303](https://codecov.io/gh/pydata/pandas/pull/14303?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will decrease coverage by **<.01%**

``` diff
@@             master     #14303   diff @@
==========================================
  Files           140        140          
  Lines         50598      50608    +10   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          43141      43149     +8   
- Misses         7457       7459     +2   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [977b384...bbfc79f](https://codecov.io/gh/pydata/pandas/compare/977b384cc7cb0ee0d403730ca4b34e32b388ac0c...bbfc79f9e15339b31d1d4b209bff9e5557da1f9f?src=pr)
 @shoyer @MaximilianR Any further comments?
 @jreback I refactored the validation of `name`/`names`, but then [Travis failed](https://travis-ci.org/pydata/pandas/jobs/163226500) with 

```
ERROR: File or directory already exists: /Users/travis/miniconda
```

I'm not sure what to make of this.
 @chrisaycock I restarted the failed osx job. ping when all green. lgtm.
 thanks @chrisaycock 
