Thread Safe

I was caching a HashAlgorithm so we could set the type of Hashing to use
when the Cache hashes the keys (so they could we changed is needed), but
the default (and maybe other HashAlgorithms) are not thread safe. I've
changed this so we create a new SHA1 class each time we hash.

The code is now thread safe :D and without all the locking about 90%
faster