Included Python dependency list.
Included more error handling.  Wrote all rows at the end of the process.  Corrected a Python 3 issue involving writing bytes, not strings, to a file.