Updated to support arguments, updated hashing algorithm, and minor cleanup