BUG: Don't convert uint64 to object in DataFrame init
The hack used to resolve #2355 is no longer needed. Removes the hack and patches several tests that relied on this hacky (and buggy) behavior.

Closes #14881.
## [Current coverage](https://codecov.io/gh/pandas-dev/pandas/pull/14917?src=pr) is 84.57% (diff: 100%)
> Merging [#14917](https://codecov.io/gh/pandas-dev/pandas/pull/14917?src=pr) into [master](https://codecov.io/gh/pandas-dev/pandas/branch/master?src=pr) will increase coverage by **<.01%**

```diff
@@             master     #14917   diff @@
==========================================
  Files           144        144          
  Lines         51057      51053     -4   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
- Hits          43180      43177     -3   
+ Misses         7877       7876     -1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [f1cfe5b...9fe2199](https://codecov.io/gh/pandas-dev/pandas/compare/f1cfe5b4eb614f9b4e201e764e9bd25f2389b355...9fe2199ab85ac21c88f1d0fa6e1dfe48258ec5df?src=pr) can you add the actual given test from the issue as well. @jreback : It's no different from the first test of `test_constructor_overflow_int64`. ok then.