Make dnsmasq aware of all names

--
This patch is a backport of https://review.openstack.org/#/c/52930/24
to Havana.  This version of the patch does not include the unit test
updates from upstream and was originally part of the puppet-coe-service-patch
module as commit ac102fefbc182744826185b09dcff99db7679cb5.  The
commit message from the upstream patch to master (which was inlcuded in
icehouse but never backported by the community to stable/havana) follows
for context.  The commit message from puppet-coe-service-patch was
not useful.
--

Each dnsmasq instance on a network is not aware of other dnsmasq's leases.

When dnsmasq is launched with --no-hosts and is not provided an --addn-hosts
file, it can resolve only the hosts to which it gives a dhcp lease and no more.
i.e.:
If dnsmasq service n°1 gives a lease to instance n°1, and dnsmasq service n°2
gives a lease to instance n°2, both VM instances and dnsmasq services being on
the same network: instance n°1 can not resolve instance n°2, because instance
n°1 queries dnsmasq n°1, and since it did not give the lease to instance n°2,
it can not resolve it (it is not aware of its existence). Same issue if
instance n°2 tries to resolve instance n°1.

The solution is to provide dnsmasq with an --addn-hosts file of all hosts on
the network. With an --addn-hosts file, each dnsmasq instance is aware of all
the hosts on the network even if they do not give the lease for a host,
therefore each dnsmasq instance can resolve any host on their network even if
they did not provide the lease for it themselves.

Change-Id: Ic6d4f7854d250889dded5491e4693fcdce32ed00
Fixes: bug #1242712

--

Implements: rally-user-story US4145
Implements: rally-task TA3473
Merge pull request #7 from CiscoSystems/TA3473/ac102fefbc1_port

Make dnsmasq aware of all names