PERF: StataReader is slow

StataReader does not make use of vectorized operations.

To improve performance, the following changes have been made:

* Use numpy.frombuffer to real the stored data in a single operation
* Vectorize date conversion
* Removal of unreachable private functions

A test was added to verify the conversion of dates that are out of the range
supported by datetime64[ns]
Merge pull request #8073 from bashtage/stata-read-batching

PERF: StataReader is slow
ENH: add support dtype='category' in Series constructor
BUG: fix reindexing to an all-nan Categorical (GH8076)