BUG/API: Index.__new__ match Series datetime inference behavior
- [ ] closes #xxxx
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [ ] whatsnew entry

This makes us slightly more aggressive in casting to dt64 in `Index.__new__` (see the added test_index_new test, it contains all of the cases that are reached in the existing tests where the current behavior differs from the PR behavior)

Technically an API change, but I think its worth it to match the Series behavior.

Found+fixed a `pd.array` bug along the way.