Test service abstraction code loading

The abstraction modules e.g. `Fog::Compute` have a list of registered
providers. All of these providers should be loaded correctly when
accessed with `Fog::Service[:provider]`

These tests hit each endpoint expecting `ArgumentError` from each
provider caused by the lack of credentials.

Credentials are stubbed out to not cause false results when the test
environment does have credentials for a service.

Some services do not have requirements so do not raise the expected
error. These special cases are just asserted. If they are not loaded the
specs fail again.
Merge pull request #3352 from fog/service_abstraction_specs

Test service abstraction code loading