PEP8: A pep8 test wrapper

Has the following features:
- Excludes files we don't want to check e.g. those we don't maintain.
- Allow you to test all of the Toolkit or just a single file.
- Check everything, a type of check or a travis selection, where travis means
  checks we that are consistent and we think you should pass when you check in
  code.
PEP8: Travis runs pep8 checks and builds docs
PEP8: E101 indentation contains mixed spaces and tabs
PEP8: W291 trailing whitespace
PEP8: W293 blank line contains whitespace
PEP8: E261 at least two spaces before inline comment
PEP8: E271 multiple spaces after keyword
PEP8: E272 multiple spaces before keyword
PEP8: E225 missing whitespace around operator
PEP8: W391 blank line at end of file
PEP8: E302 expected 2 blank lines, found 1
PEP8: E502 the backslash is redundant between brackets
PEP8: E711 comparison to None
PEP8: W191 indentation contains tabs
PEP8: E202 whitespace before ']'
PEP8: W293 blank line contains whitespace
PEP8: E225 missing whitespace around operator
PEP8: E712 comparison to True/False

Fixes to poheader.py break things so are left out for now
PEP8: E261 at least two spaces before inline comment
PEP8: E271 multiple spaces after keyword