Implement Midonet Juno Network Api calls

This patch is the first in a series of converting the current midonet plugin
code to the new model described in blueprint midonet-plugin-juno. This patch
focuses specifically on the "network" handlers.

This patch also updates the midonet UT to handle the new objects that need
to be mocked with the new model.

Change-Id: I056d698ce2e312527e756ff56c962cff83a6bc04
Partially-Implements: blueprint midonet-plugin-juno
Remove duplicated check for router connect to external net

In the function get_assoc_data, we check the router which get
from _get_router_for_floatingip whether connect to external net,
but as it has already checked in _get_router_for_floatingip.

Change-Id: I0c00c480273145538d19569dc0a679e9935ad8f9
Closes-bug: #1353414
Enabled Cisco ML2 driver to use new upstream ncclient

The code is still able to handle the old, custom ncclient that
we used before. It uses the different function signatures
for the ncclient's connect() function to detect which version
is installed.

Change-Id: I09d81b424d86f4cd35ca048507f06471246b91d8
Closes-Bug: 1352635
MLNX Agent: Process port_update notifications in the main agent loop

This patch changes the way mlnx agent process port_update notifications.
It does the same for the mlnx agent as was done for the ovs-agent in
I219c6bdf63b0b5e945b655677f9e28fa591f03cd.
Processing a port_update notification directly in the RPC
call may cause competition with the main RPC loop.
To prevent this problem, the actual process of ports updates is done
in the main RPC loop, whereas the RPC call merely adds the updated
port MAC address to a set of updated ports.
port_update notifications received within a single main loop iteration
will be coalesced and processed only once.

Closes-Bug: 1279655
Change-Id: I63dda60cb3cf171e5e9111a1ecf95e45e1d86362
Signed-off-by: Roey Chen <roeyc@mellanox.com>
ofagent: Upgrade note about firewall_driver

The corresponding devstack change: https://review.openstack.org/#/c/108915/

Related: blueprint ofagent-port-monitor
Change-Id: Ic917692d50461b1d5c4a07c988839e9f886b91d5
Removes extra indents from TestSubresourcePlugin

Removed extra indents from in front of each function in the
TestSubresourcePlugin class in test_api_v2.py so that it
meets pep8 requirements and matches up with the rest of the code.

Change-Id: Id194514d47508f8915aca18347a3c404b91a7abd
Closes-Bug: 1355100
Merge "Enabled Cisco ML2 driver to use new upstream ncclient"
Merge "ofagent: Upgrade note about firewall_driver"
Merge "Remove duplicated check for router connect to external net"
Fixes an issue with FIP re-association

When the last FIP is disassociated, the namespace and
interfaces should be removed. The internal interface
wasn't removed before without problems, but now the
namespace cannot be removed with that interface present.
The fix is to remove the internal FIP interface before
removing the namespace.

Change-Id: I021c658ecde584821f67b7a8de0205e8e938bb2d
Closes-bug: 1353287
Merge "Implement Midonet Juno Network Api calls"
Merge "MLNX Agent: Process port_update notifications in the main agent loop"
Merge "Fixes an issue with FIP re-association"