Failing test (under Release) for KVOing zombies
Manually control object lifetime in property subscription

This way, we can block -dealloc while we’re reading the objects, to
avoid any possible race conditions from deallocating on another thread
at the same time we start observing the object.
Skip subscription in -takeUntil: upon immediate completion
Strongify immediately upon reading
Explain why we lock the whole scope
Optimize like hell in test builds (to exercise races)
Turn -rac_willDeallocSignal into a replaying signal
Merge branch 'master' into kvo-dealloc-race
Merge pull request #1026 from ReactiveCocoa/kvo-dealloc-race

Attempt to fix resurrection of dead objects in KVO signals