Prevent symlinks to be added to the tree

Symlinks cannot be allowed because they are not supported by distutils.
Adding them results into package build failures.

This patch add a check that verifies that no symlinks can slip in.

Closes-bug: #1404605

Change-Id: I0d308127081bb2fa4ff7d7e0ed2f1b6e915163c9
Update L3 agent drivers singletons to look at new agent

L3 agent drivers are singletons. They're created once, and hold
self.l3_agent. During testing, the agent is tossed away and
re-built, but the drivers singletons are pointing at the old
agent, and its old configuration.

Change-Id: Ie8a15318e71ea47cccad3b788751d914d51cbf18
Closes-Bug: #1404662
Fix typo'd format parameter in midonet_lib.py

In add_static_nat(...):

        LOG.debug("MidoClient.add_static_nat called: "
                  "tenant_id=%(tenant_id)s, chain_name=%(chain_name)s, "
                  "from_ip=%(from_ip)s, to_ip=%(to_ip)s, "
                  "port_id=%(port_id)s, nat_type=%(nat_type)s",
                  {'tenant_id': tenant_id, 'chain_name': chain_name,
                   'from_ip': from_ip, 'to_ip': to_ip,
                   'portid': port_id, 'nat_type': nat_type})

Note port_id vs portid.  This line of code raises a KeyError if debug
logging is enabled.

(Found via pylint)

Change-Id: I4d76255a559489f2f0e074b4489cfa5f33f1dddf
Closes-Bug: #1404755
PLUMgrid plugin: Fix for delete subnet with admin context

When delete call using admin for a subnet created from a
non-admin project is made, the tenant_id passed to backend
happened to be of admin project. This commit fixes the issues
by getting the correct tenant_id.

Closes-Bug: 1404688
Change-Id: Id21c38610ed73defb937d971a7aade57713541c0
Merge "Fix typo'd format parameter in midonet_lib.py"
ipv6: set OtherConfig flag for DHCPv6 stateless subnets

In case of DHCPv6 stateless subnets, we should inform DHCP clients about
other configuration values available from DHCP server. This is done by
setting O (other) flag in RAs, which is controlled by AdvOtherConfigFlag
setting in radvd case.

Since radvd configuration file becomes quite complex, migrated its
generation to Jinja2.

Added a basic unit test that checks that flag is set for stateless mode
and not SLAAC. For stateful, it doesn't really matter whether other flag
is set, so no need to expect any value of it.

No more unit tests seem to be needed: conditional prefix generation is
already covered in test_l3_agent, and other statements are common for
all ipv6_ra_modes.

Change-Id: I1ddad3e1f5efce2b6da4ec00b9294e08fe1e85dd
Closes-Bug: #1397022
Merge "Update L3 agent drivers singletons to look at new agent"
Merge "ipv6: set OtherConfig flag for DHCPv6 stateless subnets"
Merge "PLUMgrid plugin: Fix for delete subnet with admin context"
Merge "Prevent symlinks to be added to the tree"