Test and document the existing Fog::Service class
Extract setting cleaning code to utility class

`Fog.symbolize_credentials` is actually a `Hash.symbolize_keys`
implementation with an exception for Headers.

Whilst it appears to be related to credentials (which is an assortment
of class methods around a Hash not an class) it is only used by
Fog::Service.

This extracts it as a start of a shared utility class whilst various
bits of randomness are pulled to sensible places.
Refactor code to handle service options
Break down setup_requirements to smaller parts

Note that a number of providers require each model when collections are
declared so the `require_models` step was almost redundant due to that
approach being used throughout fog.
Extract extra long version of CamelCase

This had been using Array/Range magic to do String#capitalize and
joining with the default argument.
Update specs to use asserts

Core team have decided to use asserts rather than must expecations
within minitest/specs.
Merge pull request #32 from fog/cleanup_service_settings

Cleanup Fog::Service settings