initial flow rule provider
diff --git a/core/api/src/main/java/org/onlab/onos/net/flow/FlowRuleProvider.java b/core/api/src/main/java/org/onlab/onos/net/flow/FlowRuleProvider.java
index 9d31631..ca22c4f 100644
--- a/core/api/src/main/java/org/onlab/onos/net/flow/FlowRuleProvider.java
+++ b/core/api/src/main/java/org/onlab/onos/net/flow/FlowRuleProvider.java
@@ -17,6 +17,15 @@
      */
     void applyFlowRule(FlowRule... flowRules);
 
+    /**
+     * Instructs the provider to remove the specified flow rules to their
+     * respective devices.
+     * @param flowRules one or more flow rules
+     * throws SomeKindOfException that indicates which ones were applied and
+     *                  which ones failed
+     */
+    void removeFlowRule(FlowRule... flowRules);
+
 
     /**
      * Returns the collection of flow entries currently applied on the given
diff --git a/core/api/src/main/java/org/onlab/onos/net/flow/criteria/package-info.java b/core/api/src/main/java/org/onlab/onos/net/flow/criteria/package-info.java
new file mode 100644
index 0000000..82eb210
--- /dev/null
+++ b/core/api/src/main/java/org/onlab/onos/net/flow/criteria/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * Traffic selection criteria model.
+ */
+package org.onlab.onos.net.flow.criteria;
diff --git a/core/api/src/main/java/org/onlab/onos/net/flow/instructions/package-info.java b/core/api/src/main/java/org/onlab/onos/net/flow/instructions/package-info.java
new file mode 100644
index 0000000..01b68ad
--- /dev/null
+++ b/core/api/src/main/java/org/onlab/onos/net/flow/instructions/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * Traffic treatment model.
+ */
+package org.onlab.onos.net.flow.instructions;