Make snake_casing consistent

For the following request:

```xml
<env:Envelope
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:tns="http://types.walletserver.casinomodule.com/3_0/"
  xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
  <env:Body>
    <tns:Deposit>
      <callerId>id</callerId>
      <callerPassword>pass</callerPassword>
      <playerName>mhenrixon</playerName>
      <amount>3.7</amount>
      <bonusPrograms>
        <bonus>
          <bonusProgramId>3</bonusProgramId>
          <depositionId>1</depositionId>
        </bonus>
        <bonus>
          <bonusProgramId>3</bonusProgramId>
          <depositionId>2</depositionId>
        </bonus>
      </bonusPrograms>
      <currency>EUR</currency>
      <transactionRef>11457</transactionRef>
      <reason>WAGERED_BONUS</reason>
    </tns:Deposit>
  </env:Body>
</env:Envelope>
```

I was getting errors saying "Deposit" could not be found. This commit
fixes that problem and ensures not only snake casing of parameters but
also of soap actions.

This is my `soap_config`

```ruby
      soap_service camelize_wsdl:   :lower,
                   wsdl_style:      :document,
                   snakecase_input: true,
                   namespace:       'http://types.walletserver.casinomodule.com/3_0/'

      soap_action :get_player_currency,
                  args:   WalletServer::Currency,
                  error:  WalletServer::Fault,
                  return: WalletServer::CurrencyResponse,
                  to:     :currency
```