Thread Saftey

Updated the Test code so we check that we can get an item out of the
store after it has been Put. This caused lots of errors when the two
threads meet in the middle of the two sets, we get lots of errors where
the item isn't in the cache after a Put.

Put locks around the Put and TryGet code to enforce thread safty, so we
know that after Put is called, we can call TryGet and get the value out
of the MemoryCache

Renames the Class to Store to avoid namespace clashes