java_gen: separate VlanVid and OFVlanVidMatch + push version to 0.3.1

OF1.3 specifies the concept of a 'PRESENT' bit (0x1000) that gets
added to the 12 bit VlanVid to indicate presence of a tagged vlan.

While the standard is unclear, our reading is that this is only
relevant for use in match fields/oxms (not in actions).

This commit accordingly splits up VlanVid into
 - a new VlanVid class (which just represents the concept of a 12-bit
    VLAN tag, as specified by 802.1Q), and
  - OFVlanVidMatch (which represents the concepts of an OF1.3 VlanTag
    + Presence Bit, as spec'ed in OF1.3 for matches).

As this is an API-incompatible change, the artifact version has
been pushed to 0.3.1
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/OFVlanVidMatchWithMask.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/OFVlanVidMatchWithMask.java
new file mode 100644
index 0000000..c91c28c
--- /dev/null
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/OFVlanVidMatchWithMask.java
@@ -0,0 +1,10 @@
+package org.projectfloodlight.openflow.types;
+
+public class OFVlanVidMatchWithMask extends Masked<OFVlanVidMatch> {
+    private OFVlanVidMatchWithMask(OFVlanVidMatch value, OFVlanVidMatch mask) {
+        super(value, mask);
+    }
+
+    /* a combination of Vlan Vid and mask that matches any tagged packet */
+    public final static OFVlanVidMatchWithMask ANY_TAGGED = new OFVlanVidMatchWithMask(OFVlanVidMatch.PRESENT, OFVlanVidMatch.PRESENT);
+}