ML2: Hierarchical port binding

The ML2 port binding logic is modified to support hierarchical
bindings. If a mechanism driver's bind_port() calls continue_binding()
rather than set_binding(), the supplied dynamic segments are used for
another level of binding.

A simplification relative to the original approved specification is
that no new configuration item is added. Instead, all registered
mechanism drivers are candidates at all levels of binding. The
specification is being updated.

Gerrit Spec: https://review.openstack.org/#/c/106185/

Implements: blueprint ml2-hierarchical-port-binding

Change-Id: Id741c2d6c443fa0eac5ecf8d964b3fc14b5d3abe