Squashed commit of the following:

commit b905df2f2634c892e6cf322efe59c334d9fe61a7
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Mon Nov 18 17:00:25 2013 -0800

    Added FlowSync flag to FlowProgrammer.

commit 10e0856a42c855b3823efc67e90786add29e19ab
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Mon Nov 18 10:55:23 2013 -0800

    Added FlowPusher enabling flag (false by default).

commit dab231cc977eb013b344dc886fd0b543148f05ca
Author: Brian O'Connor <bocon@onlab.us>
Date:   Thu Nov 14 21:11:50 2013 -0800

    reorganized and cleaned up FlowSynchronizer

commit 1c381e099f286ac27023b22c2f534d713d493c6b
Author: Brian O'Connor <bocon@onlab.us>
Date:   Thu Nov 14 18:41:48 2013 -0800

    created FlowProgrammer module and implemented FlowPusher and FlowSynchronizer as services, also modified FlowManager to use the service exported by FlowProgrammer

commit ddbc870fc089f72765cf8abee3c79faf226616d5
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Wed Nov 13 10:43:33 2013 -0800

    Limited number of messages sent at once

commit 7d74dea34013611f159833ecfd4a7ad95307f9d8
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Tue Nov 12 17:58:34 2013 -0800

    Separated flowprogrammer package from flowmanager.

commit c11fda8d1c1e058ededf5f602e5ed3faefdb3e36
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Tue Nov 12 14:59:43 2013 -0800

    Made FlowPusher multi-threaded.

commit 21b7c1fa8c2d2c0459407510bbd4d224ee9ca804
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Tue Nov 12 11:21:36 2013 -0800

    Added FlowPath/FlowEntry version interfaces to FlowPusher

commit ec4c43da51a3807defba115148e886a4b31eb8c8
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Mon Nov 11 15:51:17 2013 -0800

    Finished implementing FlowPusherService.

commit 267cfaafbf4d7d7ac5ec82bbce076d8616d552a8
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Tue Nov 5 15:52:38 2013 -0800

    Modified FlowManager to use FlowPusher instead of OFMessageDamper and FlowSwitchOperation.

commit 0b8f3a6cf6d27f0986770b1b93935dfdfee2f38c
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Tue Nov 5 10:18:12 2013 -0800

    Refactored FlowPusher

commit 73c1690e626b61945ebbe166b3fc8af259348ac6
Author: Brian O'Connor <bocon@onlab.us>
Date:   Tue Nov 5 15:26:19 2013 -0800

    removing FlowSync from Floodlight modules

commit e9f5881a0a5ab1b1f0a0b93706d282ee420b71e6
Author: Brian O'Connor <bocon@onlab.us>
Date:   Tue Nov 5 15:17:44 2013 -0800

    incremental commit before changing origins; moving FlowSync to service from module, added helper code to construct and send OF messages

commit 669cb73862ede66dcb8cd3a35cf3c5e6d0903172
Author: Brian O'Connor <bocon@onlab.us>
Date:   Wed Oct 30 20:49:59 2013 -0700

    adding FlowSynchronizer module

commit 0baf9c1f0d4cf9a0c1fba7cd39fc600440ff7a92
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Thu Oct 31 17:14:13 2013 -0700

    Remove "suspended" member from FlowQueueTable.

commit f9d4a9a57570d9b012365a22485210ed3ce25774
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Thu Oct 31 15:36:01 2013 -0700

    Created FlowQueueTable basic structure.

commit c54f0df74b9d0d79919b57afdd56cdb3153af210
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Thu Oct 31 11:40:32 2013 -0700

    Added comments

commit 8a74ddad4c2b6e983c201f41443f5625fd713114
Author: Naoki Shiota <n-shiota@onlab.us>
Date:   Thu Oct 31 10:55:32 2013 -0700

    Added FlowPusher.java basic implementation

commit f6e58e13d76e127a2ff86f9c7af8ea52115d85db
Merge: 6d7e0c4 71d458c
Author: pavlin-r <pavlin@onlab.us>
Date:   Thu Nov 14 13:51:34 2013 -0800

    Merge pull request #451 from jonohart/master

    Incremental changes to proxy ARP and reactive forwarding

commit 71d458ca5f3887b400adb7be7ed74b9d42e77e04
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 14 13:40:16 2013 -0800

    Use FlowManager's flow ID service rather thanhave Forwarding generate its own IDs

commit 293b03c4749fa579d931115ff246f561a43c4b4f
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 14 13:28:17 2013 -0800

    Reverted eclipse auto-indent on these files

commit f05769c7539d3f9d9f941cd4f9c582c3a3760854
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 14 11:36:06 2013 -0800

    Implemented hashcode() and equals() on Dpid, Port and SwitchPort in order to make SwitchPort comparison easier

commit 41d364178b7042891bac6bcfd6525e312adf5e22
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 14 11:34:59 2013 -0800

    Improvements to Forwarding to not add flows that already exist

commit a94627b26540c1579f73f485dca3330353de7ebe
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 14 11:33:46 2013 -0800

    Changes to Device and Switch storage to improve accuracy of device data. For now we will clear the devices when we add or remove ports.

commit c7579becf2f556fb10f8ea25c7607f395ddd1333
Author: Jonathan Hart <jono@onlab.us>
Date:   Tue Nov 12 12:57:29 2013 -0800

    Cleaned up ARP stuff in the HazelcastDatagrid slightly

commit a136fe441a7b76bb312dad0b38900f8dc3dfd663
Merge: 4ca022b 6d7e0c4
Author: Jonathan Hart <jono@onlab.us>
Date:   Tue Nov 12 11:56:48 2013 -0800

    Merge branch 'master' of https://github.com/OPENNETWORKINGLAB/ONOS

commit 4ca022b3023a59794dd3b15310ae5034b1a89a0a
Author: Jonathan Hart <jono@onlab.us>
Date:   Tue Nov 12 11:56:23 2013 -0800

    Minor changes to ARP

commit 0a0ac376619e7c589c7e217bc9981b5148b064b2
Merge: 4b7fd06 5361e9d
Author: Jonathan Hart <jono@onlab.us>
Date:   Mon Nov 11 22:50:00 2013 -0800

    Merge in changes to Forwarding

commit 4b7fd06b4466ccfd8eae7c517f4c5eb4d40ec653
Author: Jonathan Hart <jono@onlab.us>
Date:   Mon Nov 11 22:49:55 2013 -0800

    Began implementing IPC with Hazelcast in order to broadcast ARP via other ONOS nodes

commit 5361e9dbab638d0ff339bc8f09e0052a1425e6dc
Author: Jonathan Hart <jono@onlab.us>
Date:   Thu Nov 7 22:41:32 2013 -0800

    Fixed the use of the FlowManager API to provide rudimentary reactive forwarding
diff --git a/src/main/java/net/onrc/onos/ofcontroller/flowmanager/FlowManager.java b/src/main/java/net/onrc/onos/ofcontroller/flowmanager/FlowManager.java
index 552d2b5..0927e49 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/flowmanager/FlowManager.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowmanager/FlowManager.java
@@ -126,6 +126,8 @@
 		Iterable<IFlowEntry> allFlowEntries =
 		    dbHandlerInner.getAllSwitchNotUpdatedFlowEntries();
 		for (IFlowEntry flowEntryObj : allFlowEntries) {
+			log.debug("flowEntryobj : {}", flowEntryObj);
+			
 		    counterAllFlowEntries++;
 
 		    String dpidStr = flowEntryObj.getSwitchDpid();
@@ -160,6 +162,8 @@
 		    }
 		    counterMyNotUpdatedFlowEntries++;
 		}
+		
+		log.debug("addFlowEntries : {}", addFlowEntries);
 
 		//
 		// Process the Flow Entries that need to be added
@@ -481,6 +485,7 @@
      *
      * @return the next Flow Entry ID to use.
      */
+    @Override
     public synchronized long getNextFlowEntryId() {
 	//
 	// Generate the next Flow Entry ID.