Three main changes:

  1) Made zookeeper drive the configuration of mirrored hosts. We can now disable dark canaries completely
     by marking dark canary hosts unavailable in Zookeeper.
  2) The zookeeper service name that the dark canary handler connects to is part of the NetworkClientConfiguration
     and can be populated by existing means (through spring, etc.)
  3) Made the DarkCanaryChannelHandlers no-ops if no Zookeeper serviceName is configured.
Adding copyright notice to the DarkCanaryChannelHandler.scala file