Refactor to hide static KWMessageSpies variable behind C functions
Rename KWObjectStubsKey to be more generic KWInterceptedObjectKey
Break another infinite loop caused by hashing an object with a message spy
Refactor to hide static KWRestoredObjects variable behind C functions
Rename Issue509Spec to have more descriptive name
Add doc comment for KWInterceptedObjectKey