Allow for use with very wide files, pass pyflakes

* Instead of sampling a fixed number of bytes, sample as many lines as
  necessary to get to 100KB.  This prevents an error that would occur when the
  first row was wider than 4096 characters, while still keeping the sampling
  process reasonably fast.

* Removed the unused `sys` from the first `import` statement.  This allows the
  script to pass `pyflakes`.
Ensure execute flag via git

The `README` assumes the script is executable, however the file mode stored in
git does not reflect that.  This commit stores the correct `+x` bit in git.
Implementing `-z`, adding verbose output

* The described behavior of `-z` in the README wasn't implemented.  Now it is.
* Added a `-v` switch to optionally show progress as it happens during import.
* Updated README with a note about performance with `-n`.