very basic broken reactive forwarding; nit yet using treatments, but rather defaulting to flood for everything

generates a ton of duplicates for now
diff --git a/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowCorePacketContext.java b/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowCorePacketContext.java
new file mode 100644
index 0000000..aeb9542
--- /dev/null
+++ b/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowCorePacketContext.java
@@ -0,0 +1,41 @@
+package org.onlab.onos.provider.of.packet.impl;
+
+import static org.slf4j.LoggerFactory.getLogger;
+
+import org.onlab.onos.net.packet.DefaultPacketContext;
+import org.onlab.onos.net.packet.InboundPacket;
+import org.onlab.onos.net.packet.OutboundPacket;
+import org.onlab.onos.of.controller.OpenFlowPacketContext;
+import org.onlab.packet.Ethernet;
+import org.projectfloodlight.openflow.types.OFPort;
+import org.slf4j.Logger;
+
+public class OpenFlowCorePacketContext extends DefaultPacketContext {
+
+    private final Logger log = getLogger(getClass());
+
+    private final OpenFlowPacketContext ofPktCtx;
+
+    protected OpenFlowCorePacketContext(long time, InboundPacket inPkt,
+            OutboundPacket outPkt, boolean block, OpenFlowPacketContext ofPktCtx) {
+        super(time, inPkt, outPkt, block);
+        this.ofPktCtx = ofPktCtx;
+    }
+
+    @Override
+    public void send() {
+        if (!this.isHandled()) {
+            block();
+            if (outPacket() == null) {
+                ofPktCtx.build(OFPort.FLOOD);
+            } else {
+                Ethernet eth = new Ethernet();
+                eth.deserialize(outPacket().data().array(), 0,
+                        outPacket().data().array().length);
+                ofPktCtx.build(eth, OFPort.FLOOD);
+            }
+            ofPktCtx.send();
+        }
+    }
+
+}
diff --git a/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowPacketProvider.java b/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowPacketProvider.java
index 44a3a58..96208fc 100644
--- a/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowPacketProvider.java
+++ b/providers/of/packet/src/main/java/org/onlab/onos/provider/of/packet/impl/OpenFlowPacketProvider.java
@@ -78,7 +78,6 @@
      */
     private class InternalPacketProvider implements PacketListener {
 
-
         @Override
         public void handlePacket(OpenFlowPacketContext pktCtx) {
             DeviceId id = DeviceId.deviceId(Dpid.uri(pktCtx.dpid().value()));
@@ -88,8 +87,7 @@
                     pktCtx.parsed(), ByteBuffer.wrap(pktCtx.unparsed()));
 
             OpenFlowCorePacketContext corePktCtx =
-                    new OpenFlowCorePacketContext(0, inPkt, null, false, pktCtx,
-                            controller.getSwitch(pktCtx.dpid()));
+                    new OpenFlowCorePacketContext(0, inPkt, null, false, pktCtx);
             providerService.processPacket(corePktCtx);
         }