In linc_us4_packet:set_field, values are always whole bytes

For VLAN PCP, IP DSCP and IP ECN, expect a whole byte, and extract the
bits we care about.
Extend scenario for #153 to also set IPv4 DSCP field

The way it works now, the lower 6 bits of the value in the Set-Field
action are used as the upper 6 bits of the byte in the IPv4 header that
contains both DSCP and ECN.  It's not completely obvious to me that this
is what the spec says, so this scenario might be useful as a reference
in the future.
Fix add_group test

The time check was incorrect.  We need to make another stats request
after the sleep to get the new elapsed time, instead of retrieving it
from the record we got earlier.

Also made the assertion print the values in question on failure, and
fixed the seconds-to-microseconds conversion (which made no difference
to this test).
Use "make test" in Travis CI

This excludes the linc_us3 tests.
Merge pull request #155 from legoscia/fix-add-group-test

Fix Travis build
Add eunit test for match validation of an flow modification message

OpenFlow 1.3.2 introduces a constraint that oxm_mask bit cannot be set to 0
if the corresponding in the oxm_value is set to 1. Such a condition is an error
indicated by bad_match/bad_wildcards.
(Motivated by #142).
Add validating mask of the match field in a flow modification message

OpenFlow 1.3.2 introduces a constraint that oxm_mask bit cannot be set to 0
if the corresponding in the oxm_value is set to 1. Such a condition is an error.
(Motivated by #142).
Add controller's scenario for sending flow mod with malformed mask in a match

This scenario helps to verify that the controller sends an error while receiving
flow mod with badly formed mask in a match filed of a flow modification message.
(Motivated by #142).
Refactor linc_us4_flow:validate_match/2

After introducing a new check the function was really unreadable.
(Motivated by #142).
Merge pull request #156 from FlowForwarding/issue142

Validating mask in OXM TLV
Merge pull request #154 from legoscia/dscp-ecn-scenario

Fix Set-Field for fields with non-integral number of bytes