initial commit
Allows the use of multiple hashing algorithms