New test to ensure dealloc of observed objects runs.

I don't think that, after dealloc is swizzled, the original dealloc is always (maybe ever) being run.  I added a test to show this.

I think my test should be good, but even if it's not, putting a breakpoint on -[SHKeyValueObserverDeallocationVerifier dealloc] it never fires.