Adding tracing via TraceSource and adding TraceSwitch for controlling the level of tracing using System.Diagnostics.Trace

Rich: It is not dropping the cache per say. I just don't de-serialize from the corrupt state. On the next serialization, the cache state would be replaced. I added to the logging to clarify.