Add FlowEventDispatcher and implement event handler of FlowManagerModule.

- Added FlowEventDispatcher to handle FlowManager's events.
- Changed visibility of FlowBatchStateChangedEvent, FlowStatesChangedEvent and
  FlowStateChange classes to public.
- Implemented addListener() and removeListener() methods on FlowManagerModule.
- It is needed for Intent runtime service
  because it uses event handler of FlowManagerModule.
- This task is a preperation for ONOS-1691 and ONOS-1739.

Change-Id: I9c76d8c0dc06469698b087849f066b8531dd8736
diff --git a/src/main/java/net/onrc/onos/api/flowmanager/FlowStateChange.java b/src/main/java/net/onrc/onos/api/flowmanager/FlowStateChange.java
index 9d7f0d6..5568ec1 100644
--- a/src/main/java/net/onrc/onos/api/flowmanager/FlowStateChange.java
+++ b/src/main/java/net/onrc/onos/api/flowmanager/FlowStateChange.java
@@ -15,7 +15,7 @@
      * @param current the current state of the flow
      * @param previous the previous state of the flow
      */
-    FlowStateChange(FlowId flowId, FlowState current, FlowState previous) {
+    public FlowStateChange(FlowId flowId, FlowState current, FlowState previous) {
         this.flowId = flowId;
         this.current = current;
         this.previous = previous;