Start DNS listeners on all configured addresses - EUCA-7758

A new cloud property allows configuration of CIDRs to match local IP
addresses for listeners.

EUCA-7758
Web services and postgres listener address updates - EUCA-9122

Web services listeners are now started on addresses matching the new
bootstrap.webservices.listener_address_match cloud property. The default
is 0.0.0.0 to listen on all addresses. Internal listeners will always
be started on localhost and the bind address (--bind-addr) on port 8773,
additional listeners use the configured listen port.

Postgres is updated to listen only on IPv4 addresses by default. Prior
to this change postgres would listen on all IPv4 and IPv6 addresses. The
setup_db script now includes comments on how to configure postgres to
listen only on localhost and the configured bind address.

EUCA-9122
IP mapping for DNS service hosts - EUCA-9122

Added a cloud property to allow mapping of registered service host IPs
to alternate host IPs. This mapping allows an appropriate host IP to
returned for a given interface.

Mappings are specified as comma separated list of listener CIDR to host
CIDR:

dns.services.hostmapping = 172.16.55.0/24 -> 10.111.0.0/16

This example means the listener bound to a 172.16.55.10 address would
map a service IP to an address within 10.111.0.0/16 on the service host.

EUCA-9122
Host IP selection for eucarc service URLs - EUCA-9122

A cloud property is added to allow the preferred host IP for service
hosts to be specified.

EUCA-9122
Merge remote-tracking branch 'origin/dev/sjones/EUCA-9122' into testing