* Tightened up a possible race deep inside the connection management.
* PathChildrenCache.rebuild() and PathChildrenCache.rebuildNode() were not handling deleted nodes.
* Issue 237: New feature. PathChildrenCache now optionally posts an event when the initial cache is
populated. To accommodate this behavior there is a new version of start() that takes an enum. See the
Javadoc for each value. For this new behavior, use StartMode.POST_INITIALIZED_EVENT. Once the cache
is initialized a PathChildrenCacheEvent.Type.INITIALIZED will be posted. Huge thanks to user philflesh
for the idea and co-implementation.