Add list command to service-template

Change-Id: I0adf31907aeac9455c0c8f570795671119d889ff
Handle the following sequence of events correctly in Agent UVE code
--VM Disassociation from VMI
--VM Deletion
--VM Addition
--VM Reassociation to same VMI
(Because VM gets deleted and re-added, store VM UUID instead of VM pointer as metadata on interface entry)

Change-Id: I453c1eec392136c9a437c326e06f2dfd7defd765
-Pick interface admin status from vm interface configuration (part of id-perms attribute) and use it as one of the criteria for evaluating interface's active/inactive status.
-Display admin_state of interface in agent introspect page for interface.
-Add UT
Change-Id: I10127a7711022607c214b2350026be67c8c08898
Add DNS port as a config field in the ini file

Change-Id: Ie3798528bd55aeaaa05e78fc158cb8119086d536
Implement hierarchical edge replicated multicast (ERM).

The old implementation built a single non-hierarchical tree. Thus it
was necessary for all vRouters to send multicast subscriptions to a
single control node.  That in turn meant that a maximum of 2 control
nodes would be used - active and standby in terms of multicast tree
builder role. This restriction is now removed by having each control
node build it's own tree and then interconnecting the trees together.

Add new AFI/SAFI to exchange ERM routes.
Implement new McastEdgeDiscovery and McastEdgeForwarding attributes.
Tweak multicast tree builder code to work on nodes at a given level.

Rename InetMcastPrefix to ErmVpnPrefix and add new route types that
are used for LocalTreeRoute and GlobalTreeRoute advertised via BGP.
Prefixes learnt via XMPP are considered as Native route type.
Rename InetMcastRoute to ErmVpnRoute.
Rename InetMcastTable to ErmVpnTable and use it as the VPN table as
well as the VRF table.
Add a new RoutePathReplicator for ermvpn.

There are no changes to the XMPP messages used between control node
and agent.

Change-Id: I1092431151b9c3e61f6da32650a8e2c3fcbd87ae
Merge "Implement hierarchical edge replicated multicast (ERM)."
Merge "Add list command to service-template"
1. Extract IPv4 address from standard port group attached to contrail
   vrouter VM as vRouter IP address to be used to send port attach
   and detach notifications
2. Ignore contrail vrouter VM since it does not need to be reflected
   in the VNC DB
3. Ignore distributed virtual portgroups attached to contrail dvswitch
   that do not have a PVLAN spec attached since those do not need
   to be reflected in the VNC DB

Change-Id: I1959a41eaebbd43a26e1161c4d8950e72e892818
Merge "Handle the following sequence of events correctly in Agent UVE code --VM Disassociation from VMI --VM Deletion --VM Addition --VM Reassociation to same VMI (Because VM gets deleted and re-added, store VM UUID instead of VM pointer as metadata on interface entry)"
Merge "-Pick interface admin status from vm interface configuration (part of id-perms attribute) and use it as one of the criteria for evaluating interface's active/inactive status. -Display admin_state of interface in agent introspect page for interface. -Add UT Change-Id: I10127a7711022607c214b2350026be67c8c08898"
Merge "Add DNS port as a config field in the ini file"
Merge "1. Extract IPv4 address from standard port group attached to contrail    vrouter VM as vRouter IP address to be used to send port attach    and detach notifications 2. Ignore contrail vrouter VM since it does not need to be reflected    in the VNC DB 3. Ignore distributed virtual portgroups attached to contrail dvswitch    that do not have a PVLAN spec attached since those do not need    to be reflected in the VNC DB"
Move ifmap dependency tracker to the ifmap library so it can be used in the agent

Change-Id: I66393602dcb263e3e325adb25f22f4597d2d6225