Fixed a bug in the handling of multiple charges to the same customer
Fat Zebra: More consistent handling of tokens

Switches to using the ActiveMerchant standard of passing in the token as
the payment method rather than using a Hash. The CVV can still be passed
via the options hash. The old method of passing in a Hash is deprecated.

Also cleans up the error handling to be more robust.

Closes #715.
Add Platron integration

https://www.platron.ru/

Closes #717.
Stripe: depend on hash/slice

Closes #723.
Webmoney: Add debug mode for helper

Add mapping of debug to 'LMI_SIM_MODE'. See description on
http://wiki.wmtransfer.com/projects/webmoney/wiki/Web_Merchant_Interface#request

Closes #727.
Litle: support wiredump_device

By specifying a wiredump device, such as:

  ActiveMerchant::Billing::LitleGateway.wiredump_device = File.open('/var/tmp/litle.log', 'w')

The device will now be properly passed to the LitleOnline gem for
logging.

The LitleOnline gem uses its own connection mechanism and the logging
hook will be available only in versions more recent than 8.15.

Testing Done: tested the integration with the Kill Bill Litle plugin
(see http://kill-bill.org).

Signed-off-by: Pierre-Alexandre Meyer <pierre@ning.com>
Litle: support paypage registrations

Allow to pass a paypageRegistrationId in the store() call, instead of a
credit card.

Testing Done: tested the integration with the Kill Bill Litle plugin
(see http://kill-bill.org).

Signed-off-by: Pierre-Alexandre Meyer <pierre@ning.com>

Closes #740.
Webmoney: Add #success_response to Notification

It simplifies code if we have to render something back to payment
service. We can write in our controllers code like this:

  render @notification.success_response

Closes #744.
Authorize.Net CIM: Fix extra options formatting

Closes #694.
SecureNet: Fix remote test
SecureNet: Cleanup

Removed unnecessary code and whacked some duplication.
SecureNet: Make interfaces more consistent

In particular, the #capture, #credit, and #void calls were inconsistent
with the other gateways in ActiveMerchant in that they took additional
parameters.  It's important for the gateways to share the same interface
and use the options hash for gateway specific stuff.

Now we use the authorization to hold the pieces SecureNet needs for
capture, credit, and void.
SecureNet: Deprecate #credit in favor of #refund

Closes #782.
Mercury: Proper refund and void support

Refunds are now Returns, and voids are now VoidSales. Also allows a
"Reversals" via a custom option to #void, which are faster voids.

Closes #784.
Correctly calculates PP Express discounts for non-decimal currencies
Merge pull request #771 from Shopify/fix-paypal-non-decimal-discounts

Correctly calculate PayPal Express discounts for non-fractional currencies
PaymentExpress: Return token in authorization

In keeping with the standard #store API this makes PaymentExpress return
the token in the Response#authorization field. The custom Response#token
method has been left in place for backwards compatibility.
Capture method of NAB Transact gw should support options param
Stripe: Add ability to refund a partial application fee.
Fix webpay test failures caused by stripe changes.