Added error handler API.
Dont explode if we dont get an error handler
WIP
Assert if addOneShotKVOBlockForKeyPath is called with NSKeyValueObservingOptionInitial since a) it's dumb to do and b) it'll crash.