(PDB-100) Change the terminus to support multiple (failover) PuppetDB URLs

This commit moves from a combo 'server' and 'port' config to a
'server_urls' config that contains the full path to one or more PuppetDB
URLs. The old server/port format is still supported (internally it is
converted to a URL to conform with the new syntax). In the event the
user has more than one URL specified and there is an error, such as
connection refused, or a 503 response, the terminus will not attempt the
next PupppetDB URL specified in the 'server_urls' list.

This commit also supports a new 'server_url_timeout' config. If the
PuppetDB instance has responded in the specified number of
seconds (defaults to 30) it will fail and roll to the next PuppetDB
url (if one is provided).