BUG: Set __hash__ = None for non-hashable classes.

Because neither poly1d nor the Polynomial package polynomial classes are
immutable, hence not reliably hashable, they should signal that by
setting __hash__ = None. This also fixes the warning

Overriding __eq__ blocks inheritance of __hash__ in 3.x

that is given when the command `python2.7 -3 -c"import numpy"` is run.
STY: Make numpy/lib/test/*.py PEP8 compliant.

Run autopep8 over the test files in numpy/lib/test and make fixes
to the result.

Also remove Python5 workaround.
Merge pull request #3673 from charris/pep8-lib-tests

STY: Make numpy/lib/test/*.py PEP8 compliant.
BUG: PyArray_PyIntAsIntp had variable size check wrong way around.

This bug resulted in using a long type when a long long was required,
resulting in numerous errors when numpy was compiled as 64 bits on
64 bit windows.
Merge pull request #3678 from charris/fix-wrong-variable-type

BUG: PyArray_PyIntAsIntp had variable size check wrong way around.
Merge pull request #3657 from charris/add-hash-method-to-polynomials

BUG: Set __hash__ = None for non-hashable classes.