Employ semaphore on DeserializeObject resource

Semaphore applied around Deserialization of Items when loading from
cache.  Contention could cause strange issues on initialization of the
Windows 8 project resulting in vague "object not initialized" and "array
index out of bounds" errors.