It holds the subscriptions in a tree fashion, sending the message down the branches while broadcasting on each node.
Events are now sent for not only when an object changes but also when one is created or deleted. For now it's not really possible to subscribe to these events however. This breaks backwards-compatibility with the websocket messages.