Testing & fixing GUI fail-over code.

Change-Id: I64843186bf05020ce77a1508a300391e0db6bf48
diff --git a/providers/null/host/src/main/java/org/onosproject/provider/nil/host/impl/NullHostProvider.java b/providers/null/host/src/main/java/org/onosproject/provider/nil/host/impl/NullHostProvider.java
index d5ee60e..c4e9c5c 100644
--- a/providers/null/host/src/main/java/org/onosproject/provider/nil/host/impl/NullHostProvider.java
+++ b/providers/null/host/src/main/java/org/onosproject/provider/nil/host/impl/NullHostProvider.java
@@ -22,7 +22,6 @@
 import org.apache.felix.scr.annotations.ReferenceCardinality;
 import org.onlab.packet.MacAddress;
 import org.onlab.packet.VlanId;
-import org.onosproject.cfg.ComponentConfigService;
 import org.onosproject.cluster.ClusterService;
 import org.onosproject.mastership.MastershipService;
 import org.onosproject.net.Device;
@@ -43,8 +42,8 @@
 import org.onosproject.net.provider.ProviderId;
 import org.slf4j.Logger;
 
-import static org.slf4j.LoggerFactory.getLogger;
 import static org.onlab.util.Tools.toHex;
+import static org.slf4j.LoggerFactory.getLogger;
 
 /**
  * Null provider to advertise fake hosts.
@@ -66,9 +65,6 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
     protected HostProviderRegistry providerRegistry;
 
-    @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
-    protected ComponentConfigService cfgService;
-
     private HostProviderService providerService;
 
     //make sure the device has enough ports to accomodate all of them.
@@ -94,7 +90,6 @@
 
     @Activate
     public void activate() {
-        cfgService.registerProperties(getClass());
         providerService = providerRegistry.register(this);
         for (Device dev : deviceService.getDevices()) {
             addHosts(dev);
@@ -106,7 +101,6 @@
 
     @Deactivate
     public void deactivate() {
-        cfgService.unregisterProperties(getClass(), false);
         providerRegistry.unregister(this);
         deviceService.removeListener(hostProvider);
         providerService = null;
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java b/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
index dd00d49..a35a388 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/UiWebSocket.java
@@ -194,8 +194,8 @@
         }
 
         ObjectNode payload = mapper.createObjectNode();
-        payload.set("instances", instances);
-        sendMessage("onosInstances", 0, payload);
+        payload.set("clusterNodes", instances);
+        sendMessage("bootstrap", 0, payload);
     }
 
 }
diff --git a/web/gui/src/main/webapp/app/fw/remote/websocket.js b/web/gui/src/main/webapp/app/fw/remote/websocket.js
index f1a4d52..ca2840d 100644
--- a/web/gui/src/main/webapp/app/fw/remote/websocket.js
+++ b/web/gui/src/main/webapp/app/fw/remote/websocket.js
@@ -40,10 +40,12 @@
 
     var builtinHandlers = {
         bootstrap: function (data) {
-            clusterNodes = data.instances;
+            clusterNodes = data.clusterNodes;
             clusterNodes.forEach(function (d, i) {
                 if (d.uiAttached) {
                     clusterIndex = i;
+                    $log.info('Connected to cluster node ' + d.ip);
+                    // TODO: add connect info to masthead somewhere
                 }
             });
         }
@@ -228,7 +230,11 @@
             wsock = _wsock_;
             vs = _vs_;
 
-            bindHandlers(builtinHandlers);
+            // TODO: Consider how to simplify handler structure
+            // Now it is an object of key -> object that has a method named 'key'.
+            bindHandlers({
+                bootstrap: builtinHandlers
+            });
 
             return {
                 resetSid: resetSid,