Make TWTKeyValueObserver retain targets before messaging them

@prachigauriar @jnjosh please review
Would you mind adding some comments to explain how the test works. The test does exactly what it needs to, but people who don’t understand the scenario might try to simplify it.