Slight cleanup
Not this benchmark..
Test stub
added third hashing fallback in case the first two don't give a unique hash
removed dependency on dictionary and instead now use a trick based on .NET generics to get the right deserializer
recursion fixes