Summary:
This diff is part of the bigger task T60496135
This diff changes the RN support from crude to decent citizen, making sure we don't recycle callbacks over the bridge, use subscriptions were possible, and making sure connecting, disconnecting, etc works correctly
For example, connect and disconnect hooks should work.
Finally, throw in hot reloading into the mix, which causes the registerPlugin to be triggered another time, without the old one every been unloaded.
This should trigger a new 'onConnect' on the client, to make sure it can restore any state / subscriptions necessary, even though the never disappeared in the Java world.
These cases should all be handled well.
Reviewed By: jknoxville
Differential Revision: D19347330
fbshipit-source-id: de64a08f4043f01528c794430ccc3c717abf0180