Reduce the surface of the primitive hash interface.  Add more interfaces, drop direct hashlib compatibility.
Ignore abstractproperty.
Fix python3 compatibility and pep8
Merge branch 'master' into primitive-hashes
Update documentation
Fix python3 compat for the hash_test.
Enforce that Hash takes a HashAlgorithm instance.
Inline _copy_ctx
Improve Hash documentation.
Merge pull request #200 from dreid/primitive-hashes

[WIP] Reduce the surface of the primitive hash interface.