Refactor soap config

This pull request addresses issue #105.

It removes configuration options dealing with individual SoapClient options. Instead we use a configuration option array. This allows us to support more of the currently unsupported features like authentication.

Also adds a configuration option for defining a custom SoapClient class to use when accessing the SOAP service. This allows us to use more advanced implementations such as [BeSimpleSoapClient](https://github.com/BeSimple/BeSimpleSoapClient/blob/master/SoapClient.php).