Test different means of creating load balancers.

Including the API-specified minimal way: name and protocol.
Yard docs and optional parameters for lbs.
The "nodes" element is actually nullable.
Whitespace touchups.
Reorganize clb fixtures, add a minimal case.
Port and nodes are *not* required for LB creation.
Formatting stick!
catch invalid uri

if URI.parse does not result in a host we don't continue and raise
an error
Merge pull request #3119 from teaforthecat/catch-invalid-endpoint

[aws] catch invalid uri
[google|dns] Let non-mocked tests run by setting an env variable.

If $FOG_TEST_GOOGLE_DNS_ZONE is set in the environment, the tests run in
non-mocked mode too. Also perform some basic validation for the convenience of
the user - Google API just says "Invalid value for
'entity.managedZone.dnsName'" without hinting on what is wrong.
[google|dns] Add support for get_managed_zone, with tests.
Merge pull request #3110 from smashwilson/load-balancer-params

[rackspace] More optional parameters for Cloud Load Balancers
Merge pull request #3125 from porridge/get-zone

[google|dns] Improve non-mocked tests, add support for get_managed_zone, with tests.
Updated to CloudStack 4.3 and re-added historical function behavior.
[aws|dns] 1.8 compat fix
Merge pull request #3126 from fifthecho/master

Updated to CloudStack 4.4 API and re-added historical function behavior.
remove files duplicated from fog-core
Revert "Updated to CloudStack 4.4 API and re-added historical function behavior."
Merge pull request #3127 from fifthecho/revert-3126-master

Revert "Updated to CloudStack 4.4 API and re-added historical function b...
Redux of update to CloudStack 4.4 API and supporting "overloaded" methods to support old and new styles of calling
CloudStack API functions.
This should allow all options to be passed as a single hash or as an ordered list of parameters.