fixes #8

before generating a rule, we check to make sure that if either the
destination_port or source_port are specified, the protocol is
specified as well.
added spec tests for #8

added spec tests to check for missing protocol when destination/source
port is specified.

fixed spec tests that were not up to code, and neglected to provide a
protocol when specifying a destination/source port.
Merge branch 'issues/8'