use the generic name "ofp" to refer to the the OpenFLow protocol module

This makes it easier to switch out of10 for e.g. of12. This is a temporary
solution until we have a single protocol module that handles all versions of
OpenFlow.
controller: fix version negotiation
base_tests: only use supported_actions field for OF 1.0
add --of-version option

This option is used to choose which OpenFlow protocol module is aliased to
"ofp", which the controller and tests import. When we have an OpenFlow protocol
module that works with all versions of OpenFlow we can remove this hack without
changing the command line interface or test API.
import OpenFlow 1.2 protocol module and basic test cases from CPqD/oftest12

For now these tests will live in a separate directory. The goal is to merge
them where possible but this has to wait for an OpenFlow protocol module that
supports all versions of OpenFlow.
oft12 testutils: remove uses of parent.logger
of12: simplify importing
import remaining OF 1.2 tests from CPqD/oftest12
import scapy.contrib.mpls for ease of installation
of12: fix bug in packet_to_flow_match
trim imports of OF 1.2 tests
of12: remove redundant action_ prefix from action classes