CLN: Refactor Index._validate_names()
Currently `Index._validate_names()` does _not only validation_, but some other unrelated to validation stuff:

https://github.com/pandas-dev/pandas/blob/055bfa6a2a4ef81d6a0c41c6f870dbe0ec5296d3/pandas/core/indexes/base.py#L803-L820

Moreover, it's closely tied in with copying logic without any reason, so that `_validate_names()` cannot be used in other cases.
I think it would be reasonable to separate these responsibilities.