PERF: StataWriter is slow

StataWriter wrote data using scalar operations.  This has been replaced using
numpy's internal binary writer (tofile).

Changes needed to improve performance include:

* Vectorized pandas date to Stata date conversion
* Vectorized null padding
* Conversion to record array

When data contain strings, the old writing paths are still used.
This is old code that I just tried to clean up to make it a bit more careful.  I've never tried to write arbitrary objects to Stata but I thought it might be useful to tell users that this is not supported.  

The whole function could probably use a rewrite since I believe some of it is unreachable.