Remove KVO observer on dealloc

This case should never happen, since the SDK is supposed to be used via the sharedInstance and never be deallocated.