Intent treatments need to be passed down to the flows

Change-Id: I4569536cb62188f711ce005af1c3501dc31f7e74
diff --git a/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java b/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
index d3fb7d9..5e64c64 100644
--- a/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
+++ b/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
@@ -44,6 +44,16 @@
         return new Builder();
     }
 
+    /**
+     * Returns a new traffic treatment builder primed to produce entities
+     * patterned after the supplied treatment.
+     *
+     * @return traffic treatment builder
+     */
+    public static TrafficTreatment.Builder builder(TrafficTreatment treatment) {
+        return new Builder(treatment);
+    }
+
     //FIXME: Order of instructions may affect hashcode
     @Override
     public int hashCode() {
@@ -90,6 +100,13 @@
         private Builder() {
         }
 
+        // Creates a new builder based off an existing treatment
+        private Builder(TrafficTreatment treatment) {
+            for (Instruction instruction : treatment.instructions()) {
+                add(instruction);
+            }
+        }
+
         @Override
         public Builder add(Instruction instruction) {
             if (drop) {