GUI - reworked to allow for event-based topology building, in preparation for web-socket connection to the server.
 - device nodes will enter in a fixed location, if metaUi data is included in the addDevice event.
 - device nodes now adjust their bounds to fit the text (and show an icon).
 - added cycle labels function (press the 'L' key).
 - links now appear with "transition" animation.
 NOTE: this is still WIP.

Change-Id: I3adbe9895e189e482316e86384dd53fd27781cd3
diff --git a/web/gui/src/main/webapp/topo2.css b/web/gui/src/main/webapp/topo2.css
index eee9244..8293ce4 100644
--- a/web/gui/src/main/webapp/topo2.css
+++ b/web/gui/src/main/webapp/topo2.css
@@ -24,6 +24,34 @@
     opacity: 0.5;
 }
 
-svg .node {
+svg .node.device {
+    stroke: none;
+    stroke-width: 1.5px;
+    cursor: pointer;
+}
+
+svg .node.device.fixed rect {
+    stroke-width: 1.5;
+    stroke: #ccc;
+}
+
+svg .node.device.switch {
+    fill: #17f;
+}
+
+svg .node.device.roadm {
     fill: #03c;
-}
\ No newline at end of file
+}
+
+svg .node text {
+    stroke: none;
+    fill: white;
+    font: 10pt sans-serif;
+    pointer-events: none;
+}
+
+/* for debugging */
+svg .node circle.debug {
+    fill: white;
+    stroke: red;
+}