1 - Added support for KVO broadcasters to dealloc without leaking when not explictly removing their observers.
2 - Refactored some code. i.e.: KVOProxy.context now holds KVOContexts representing both an object's observers and observees.
3 - Made KVOProxy immutable public so it can be queried.
4 - Added a few comments in the interface.