testutils: add new functions to check for dataplane packets

`receive_pkt_check` and `receive_pkt_verify` had slightly different
functionality and neither were sufficient for complex tests. This change
deprecates them and adds new functions.

The high level `verify_packets` function is sufficient for most tests. When
more complex logic is needed the primitive functions `verify_packet`,
`verify_no_packet`, and `verify_no_other_packets` should be used directly.

All OpenFlow 1.0/1.3 tests are updated to use the new functions. The old
functions are left around for compatibility with out of tree tests.
diff --git a/tests/bsn_ipmask.py b/tests/bsn_ipmask.py
index 8dd603a..f4c4cbf 100644
--- a/tests/bsn_ipmask.py
+++ b/tests/bsn_ipmask.py
@@ -148,16 +148,16 @@
             
         msg(ip0)
         self.dataplane.send(ports[0], str(pkt0))
-        receive_pkt_verify(self, [ports[1]], pkt0, ports[0])
+        verify_packets(self, str(pkt0), [ports[1]])
 
         msg(ip1)
         self.dataplane.send(ports[0], str(pkt1))
-        receive_pkt_verify(self, [ports[2]], pkt1, ports[0])
+        verify_packets(self, str(pkt1), [ports[2]])
 
         msg(ip2)
         self.dataplane.send(ports[0], str(pkt2))
-        receive_pkt_verify(self, [ports[1]], pkt2, ports[0])
+        verify_packets(self, str(pkt2), [ports[1]])
 
         msg(ip3)
         self.dataplane.send(ports[0], str(pkt3))
-        receive_pkt_verify(self, [ports[2]], pkt3, ports[0])
+        verify_packets(self, str(pkt3), [ports[2]])