Implemented convenient builders of BMv2 extension selectors and
treatments. 

Match and action parameters can now be built from primitive data types
(short, int, long or byte[]) which are then casted automatically
according to a given BMv2 configuration. Also, simplified demo
applications code / structure.

Change-Id: Ia5bebf62301c73c0b20cf6a4ddfb74165889106f
diff --git a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2ExtensionSelectorResolver.java b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2ExtensionSelectorResolver.java
index 28e93a7..78986a6 100644
--- a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2ExtensionSelectorResolver.java
+++ b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/Bmv2ExtensionSelectorResolver.java
@@ -22,8 +22,6 @@
 import org.onosproject.net.flow.criteria.ExtensionSelector;
 import org.onosproject.net.flow.criteria.ExtensionSelectorType;
 
-import java.util.Collections;
-
 import static org.onosproject.net.flow.criteria.ExtensionSelectorType.ExtensionSelectorTypes.BMV2_MATCH_PARAMS;
 
 /**
@@ -34,7 +32,7 @@
     @Override
     public ExtensionSelector getExtensionSelector(ExtensionSelectorType type) {
         if (type.equals(BMV2_MATCH_PARAMS.type())) {
-            return new Bmv2ExtensionSelector(Collections.emptyMap());
+            return Bmv2ExtensionSelector.empty();
         }
 
         return null;