Cleaning up with pep8; separating test dependencies

Installed the pep8 utility and made a bunch of related changes.

Pulled testing utils out of setup.py, leaving only runtime dependencies.
These test utils are now in requirements.txt, which contributors can use
separately.