XD-2004: Containers stopped responding to Admin

Fixed race condition between the container creating the `/xd/deployments/modules/allocated/container-id` path and the supervisor removing the path when the container exits. The container will now wait for the supervisor to remove the path before proceeding with startup.

Added `onSuspend` and `onResume` to `ZooKeeperConnectionListener`. This allows us to distinguish between events where container ephemeral nodes need to be created after a network disconnect.

Temporary network disconnects will raise `SUSPENDED` events followed by `RECONNECTED` events. Containers will now avoid undeploying modules upon `SUSPENDED` events. `LOST` events still
cause modules to be undeployed. `RECONNECTED` events will force a re-registration with ZooKeeper if the connection was previously `LOST` or if the container's ephemeral node is no longer present.

Testing was done on Linux via `iptables` DROP rules.
I am curious how is it possible for the `connectionState` be `ConnectionState.LOST` as it is always `RECONNECTED` as the `onResume` is invoked only when the ZK connection state is changed `RECONNECTED`?