API: Settings are now loaded from a config files

Now when SoftLayer.Client() is called it will check for settings in this order:
 * User-Supplied Arguments
 * Environmental Variables
 * User-supplied config file, ~/softlayer, /etc/softlayer.conf

Once the configuration reaches a username and api_key it will stop gathering settings
and use the settings it has thus far.

CLI: Lots of config logic was taken out of the CLI so it could leverage the
     API configuration that happens automatically.