Refactored Traffic Monitor code to display packets / second.
- cleaned up "rate thresholds" for coloring links.
- added unit tests for TopoUtils.
- "Monitor All Traffic" button on toolbar now cycles between 3 modes.

Change-Id: If33cfb3e6d6190e1321752b6d058274d3004f309
diff --git a/web/gui/src/main/webapp/app/view/topo/topo-theme.css b/web/gui/src/main/webapp/app/view/topo/topo-theme.css
index 768c506..8f48766 100644
--- a/web/gui/src/main/webapp/app/view/topo/topo-theme.css
+++ b/web/gui/src/main/webapp/app/view/topo/topo-theme.css
@@ -267,24 +267,37 @@
     stroke: rgba(0,153,51,0.5);
 }
 
-/* Port traffic color visualization for Kbps, Mbps, and Gbps */
+/* Port traffic color visualization:
 
-#ov-topo svg .link.secondary.port-traffic-Kbps {
+    For bits per second we will use:
+        - green for Kbps,
+        - yellow for Mbps,
+        - orange for Gbps, and
+        - red for > 10 Gbps
+
+    For packets per second we will use:
+        - green for > 0
+        - yellow for > ?
+        - orange for > ??
+        - red for > ???
+*/
+
+#ov-topo svg .link.secondary.port-traffic-green {
     stroke: rgb(0,153,51);
     stroke-width: 5.0;
 }
 
-#ov-topo svg .link.secondary.port-traffic-Mbps {
+#ov-topo svg .link.secondary.port-traffic-yellow {
     stroke: rgb(128,145,27);
     stroke-width: 6.5;
 }
 
-#ov-topo svg .link.secondary.port-traffic-Gbps {
+#ov-topo svg .link.secondary.port-traffic-orange {
     stroke: rgb(255, 137, 3);
     stroke-width: 8.0;
 }
 
-#ov-topo svg .link.secondary.port-traffic-Gbps-choked {
+#ov-topo svg .link.secondary.port-traffic-red {
     stroke: rgb(183, 30, 21);
     stroke-width: 8.0;
 }