Fix for Network Partition Race Condition

Update the registry to always emit 'online' events when a client checks in. This should address the edge case where there is a network partition and the initial 'online' event is missed due to network issues. 

The client has been updated to maintain an in-memory collection of all registrations related to it's current subscriptions. The client will only emit an 'online' event if the registration metadata has changed.