PERF: improve DTI string parse
- [x] closes #11169, closes #11287
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

cleaned up `DatetimeIndex` constructor removing slower string-parsing path.
## Performance Improvement

related to #7599, internally use `to_datetime` always as it tries some fastpath.

```
inp = np.array(['2011-01-01 09:00' for i in range(10000)])

# on current master
%timeit pd.DatetimeIndex(inp)
1 loops, best of 3: 3.41 s per loop
%timeit pd.to_datetime(inp)
100 loops, best of 3: 4.77 ms per loop

# after the PR
%timeit pd.DatetimeIndex(inp)
#100 loops, best of 3: 4.23 ms per loop
%timeit pd.to_datetime(inp)
#100 loops, best of 3: 4.25 ms per loop
```
## Bug Fixes

The cleanup fixed these 2 kind of issues:
#### 1. #11169 and #11287 Invalid string parsing may raise `TypeError`

I met the same issue on travis and fixed with try-except clause (I can't reproduce it on my local Mac). 
#### 2. Index may incorrectly coerces mismatched tz

on current master, `DatetimeIndex` and normal `Index` behaves differently.

```
# OK
pd.DatetimeIndex([pd.Timestamp('2011-01-01', tz='US/Eastern')], tz='US/Pacific')
# TypeError: Already tz-aware, use tz_convert to convert.

# NG, it ignores mismatch and coerce to passed tz
pd.Index([pd.Timestamp('2011-01-01', tz='US/Eastern')], tz='US/Pacific')
DatetimeIndex(['2010-12-31 21:00:00-08:00'], dtype='datetime64[ns, US/Pacific]', freq=None)
```

after the PR both behave the same, showing understandable error.

```
pd.Index([pd.Timestamp('2011-01-01', tz='US/Eastern')], tz='US/Pacific')
# TypeError: data is already tz-aware US/Eastern, unable to set specified tz: US/Pacific

pd.DatetimeIndex([pd.Timestamp('2011-01-01', tz='US/Eastern')], tz='US/Pacific')
# TypeError: data is already tz-aware US/Eastern, unable to set specified tz: US/Pacific
```

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13692?src=pr) is **84.54%**

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

``` diff
@@             master     #13692   diff @@
==========================================
  Files           141        141          
  Lines         51185      51159    -26   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
- Hits          43275      43250    -25   
+ Misses         7910       7909     -1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last updated by [506520b...8774772](https://codecov.io/gh/pydata/pandas/compare/506520bd35331aa82db50686c07d96594cac0c10...8774772d016578f154a8847ea3a86f151a576b2f?src=pr)
 @sinhrks this cleans up lots of junk!

just a couple of clarifications.
 lgtm. ready to go?
 yes, it's ready:)
