(PDB-954) Support a fallback database

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).

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).