Add list command to service-template

Change-Id: I0adf31907aeac9455c0c8f570795671119d889ff
Handle the case where unsubsribe is rxed after client is already unsubscribed. Clear the registered routing instance list. Added testcase for duplicate unsubscribe and bulk add of rt to routing instance

Change-Id: I078e957ca17c97aebbfff43cc2d579c8641b8674
Send VM update only if vrf assign table has changed

Change-Id: Ief960609665191aa7de2764716af8792a98113f7
Merge "Handle the case where unsubsribe is rxed after client is already unsubscribed. Clear the registered routing instance list. Added testcase for duplicate unsubscribe and bulk add of rt to routing instance"
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
1. Restructure vcenter monitor code to create 3 classes:
   a. VCenterDB to populate info from VMware/VCenter
   b. VncDB to populate/add/delete info from Contrail VNC
   c. VCenterMonitor to sync the virtual network, virtual machine,
      and virtual machine interface information
2. Add code to give plug and unplug notification to VRouter. The
   VRouter IP is stored in the virtual machine display name in VNC.
3. Change ContrailVRouterApi to support one shot mode of operation
   by not calling Connect.

Change-Id: I3cc65fedb180dce0d77c0183ffe9b9edb324c4c4
changes for adding contrail-dns

Change-Id: Ibe21c25fb0d4cbffbeb4349fd4b24e7d4cfadb2b
Merge "changes for adding contrail-dns"
Merge "Send VM update only if vrf assign table has changed"
Fix typo

Change-Id: Iffabea510c73d51faecd0e421d22f9ae82ac3b2b
Merge "Implement hierarchical edge replicated multicast (ERM)."
Merge "Add list command to service-template"