merge prototypes and hashcatModes into a list of nestedtuples

Use ints for hashcat modes.

Use str.format() in writeResult.
Move identifyHash() into a class to allow per-instance customization of prototypes

Reimplement this ahead of the python-restructure branch.
Merge pull request #10 from bburky/python-class2

Python class2