Kvo proxy redux

Continuing @rspeyer's KVO proxy implementation from #1276 

Firstly, this pull request is to bring @rspeyer's changes up to date with `master`. This will mainly be updating the tests from Specta to Quick. Beyond that, perhaps `RACKVOProxy` and `RACKVOTrampoline` will be unified.

cc @epatey @modocache