vint: make VInt an internal module

First step in eliminating VInt from ocaml-openflow is to make it an
internal concept. Once it's eliminated from the mli files of the
library, it can continue to exist in the library if need be, but will no
longer infect other libraries that depend on it, i.e., frenetic.
vint: use int32 for portId and queueId

queue_id size is consistently 32 bits across OpenFlow versions. port_id,
however, is an int16 in OpenFlow 1.0 and an int32 in subsequent
versions. The compatibility layer will treat portIds as int32s and throw
a runtime error if a port number is used that is out of range for the
OpenFlow version the compatibility layer is using.

Note runtime checks should be occurring right now for reserved ranges of
port numbers anyways, so this does not introduce a point where errors
may occur.
vint: properly check physical port ranges

Closes #114
vint: expose Invalid_port exception in SDN_OpenFlow0x01
vint: export string_of_seq
vint: replace FieldMap with pattern record
vint: consistently use portId in SDN_Types
vint: remove Int32m variant
vint: add VInt.get_int12

Used for casting vlan ids.
vint: replace field/fieldVal with explicit actions

Rather than having a fieldVal type that must accommodate all the
different bit widths of fields, instead create an action for each field,
which explicitly determines the bit width of its associated value.

After this commit, it's no longer necessary to expose VInt in a public
API. It will remain in the code as a means to assist in casting between
various bit widths.
vint: fix pattern pretty-printing with vlan
vint: remove space from pattern pretty-printer
vint: change vlan representation in pattern

The extra option layered around the dlVlan type was unnecessary and
causing the representation of the wildcard pattern to be non-unique.
While a canonical could be defined, it's better to just avoid that issue
altogether.
Merge pull request #118 from frenetic-lang/vint

Conflicts:
	setup.ml