Proxy configuration

Add a "proxy" configuration key for setting the proxy on both SoapClient and libxml for fetching the WSDL. The proxy can be specified either as a string ("host:port") or as an array containing 'host', 'port', and optionally 'login' and 'password' keys.

Honestly, I could not test whether the proxy authentication with login and passwort really works because I don't have a proxy that requires authentication. Without authentication the proxy settings work well for me.

Initially I developed these changes against the 3.x branch but since it got merged to master I rebased on master and created a new pull request.
If `soapClientOptions['authentication']` is set to `SOAP_AUTHENTICATION_DIGEST` would this work? I am not sure how that authentication method works but I am pretty sure it is not the same as `SOAP_AUTHENTICATION_BASIC`.

How about throwing an `InvalidArgumentException`?