Watch broker directory and nodes in ZK

Instead of (only) fetching brokers during startup, watch the brokers in ZK and
notify the journal and snapshot store actors when changes occur. This way if
Kafka is unavailable during startup, the plugin will recover once Kafka
becomes available. Furthermore, changes to the Kafka cluster will be
automatically picked up by the plugin without requiring a restart.