handles expire event inside ZkClient event thread now so that it can call resetUntilConnected method too. resetUntilConnected calls wait method that cann't/shouldn't execute on and block ZooKeeper event thread