Fix decoding OXM match fields whose values/masks does not end on byte boundary

While decoding OXM match fields' value/mask padding wasn't removed
and the resulting value/mask always ended on the byte boundary. To address
this issue new function ofp_utils:uncut_bits/2 is now introduced to remove
the unwanted padding.
(Motivated by FlowForwarding/LINC-Switch#144).
Add utility function for creating #ofp_field{} with mpls_bos field

The ofp_v4_utils module was missing a function for creating an OXM TLV
for MPLS BoS.
(Motivated by FlowForwarding/LINC-Switch#144).
Merge pull request #45 from FlowForwarding/issue144

Fix decoding OXM match fields and add utility for creating MPLS related match field