Improvements to flows list command.

 * Added -s option which gives more succinct output.
 * Display each flow on one line for easy grepping.
 * Added ability to filter output by table ID.
 * Flows are now sorted by descending priority within a table.
 * Removed the use of toStringHelper in instructions and criterion to produce
   less verbose output.

Change-Id: I1c874c776491386488ea5a4d23627b20f1e5728b
diff --git a/core/api/src/main/java/org/onosproject/net/flow/instructions/Instructions.java b/core/api/src/main/java/org/onosproject/net/flow/instructions/Instructions.java
index 8ed882c8..cb6e200 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/instructions/Instructions.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/instructions/Instructions.java
@@ -54,6 +54,8 @@
  */
 public final class Instructions {
 
+    private static final String SEPARATOR = ":";
+
     // Ban construction
     private Instructions() {}
 
@@ -547,7 +549,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString()).toString();
+            return type().toString();
         }
 
         @Override
@@ -581,7 +583,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString()).toString();
+            return type().toString();
         }
 
         @Override
@@ -619,10 +621,10 @@
         public Type type() {
             return Type.OUTPUT;
         }
+
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .add("port", port).toString();
+            return type().toString() + SEPARATOR + port.toString();
         }
 
         @Override
@@ -665,9 +667,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .addValue("group ID=0x" + Integer.toHexString(groupId.id()))
-                    .toString();
+            return type().toString() + SEPARATOR + Integer.toHexString(groupId.id());
         }
 
         @Override
@@ -770,8 +770,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .add("meter ID", meterId.id()).toString();
+            return type().toString() + SEPARATOR + meterId.id();
         }
 
         @Override
@@ -814,8 +813,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .add("tableId", this.tableId).toString();
+            return type().toString() + SEPARATOR + this.tableId;
         }
 
         @Override
@@ -864,10 +862,9 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .add("metadata", Long.toHexString(this.metadata))
-                    .add("metadata mask", Long.toHexString(this.metadataMask))
-                    .toString();
+            return type().toString() + SEPARATOR +
+                    Long.toHexString(this.metadata) + "/" +
+                    Long.toHexString(this.metadataMask);
         }
 
         @Override
@@ -917,10 +914,7 @@
 
         @Override
         public String toString() {
-            return toStringHelper(type().toString())
-                    .add("extension", extensionTreatment)
-                    .add("deviceId", deviceId)
-                    .toString();
+            return type().toString() + SEPARATOR + deviceId + "/" + extensionTreatment;
         }
 
         @Override