Install pylint on the build.

* Do not clutter output with files that are OK.
* Activate pylint if flake8 finds no errors.
* Ignore errors (E0102), (E0602), (E0202), (E1101), (E1103) for now.
* Ignore all warnings for now.
* Ignore conventions (C0103), (C0111), (C0301), (C0302), (C0330) for now.
* Ignore all refactors for now.
E0611: Fix importing names from absent modules.
E1205: Fix arguments for logging format strings.
E1305: Fix arguments for format strings.
W0102: Disallow mutable values as default arguments.
W0107: Drop unnecessary pass statements.
W0231: Call __init__ of parent class.
W0403: Honour relative imports.

* Make the code more self-documented.
* Ease the transistion to Python 3.
W0611: Drop unsed imports.
W0612: Fix unused variables and functions.

* Comment and label unused functions.
* Use _ for unused variables in unpacking statements.
C1001: All classes should be new-style classes.
C0325: Drop unnecessary parens.