Support for matching hash values

I was struggling with matching hash values occasionally failing. This was the hashes were changed to strings, and then compared, and sometimes the ordering of the key/value pairs were changed. Now the comparison is done using the hash values themselves, rather than the to_s versions.