Add avs_result and cvv_result codes to Optimal Payments
Move rexml text into a method and dont rescue nil
Fix docs (a paragraph in the middle of other one)
Quickpay: Add support for protocols 5 & 6

The default protocol version for the gateway is still v3, which is the
oldest protocol still supported by Quickpay.

Closes #507.
Merge pull request #532 from semaperepelitsa/patch-1

Authorize.Net CIM: Fix docs for #initialize
Banwire gateway: Handle JSON::ParserError

There have been a few times when Banwire has given us invalid json which
raised an exception.  Now we handle it more gracefully in a manner
similar to how we're handling it in Balanced, Fat Zebra, and Stripe.

Closes #534.
Balanced gateway: Fix unspecified marketplace

If the marketplace is unspecifed, the gateway makes an http request
which needs `@options` to be set.  Fixing the initialize method got
all but 2 of the remote tests working.

Fixed the other 2 remote tests by bringing the expected messages up
to date.

Closes #537.
QBMS gateway: Allow partial addresses

We now handle the case of someone specifying a partial address such as a
zip code without a street address.

Added a test for the address truncation.

Closes #540.
Netbilling: Support site_tag credentials for merchants sharing a single account on multiple sites
Use dynamic year in redsys test request
Update Beanstreams supported_cardtypes as per their site
Authorize.Net CIM: Allow omitting expiration date

When using `update_customer_payment_profile`, the card number and
expiration date may not be available (and can't be retrieved using
`get_customer_payment_profile`). Both card number and expiration
date are required to make the update call. The Authorize.net API
allows sending a masked card number (e.g. "XXXX0027") and a masked
expiration date (e.g. "XXXX"), but `add_credit_card` will fail because
it expects the expiration date to be two integers representing month
and year.

This commit allows the expiration date to be omitted from
the passed in `CreditCard` object. If no expiration date is present,
`expdate` will return "XXXX".
Merge pull request #544 from Shopify/update-beanstream-card-types

Beanstream: Update supported_cardtypes
Auth.Net CIM: Add extraOptions support

Adds 'extra options' (as defined by the Authorize.net CIM API) to the
gateway implementation for creating customer profile transactions.

Their API documentation describes extra options as follows:

> Information in name/value pair format that does
> not exist within CIM, such as customer IP address, etc.

The test demonstrates the effects of setting one of these extra options.

Closes #546.
Update README

Pulls the details about who maintains ActiveMerchant down into the
README, and adds credit for Spreedly.

Remove reference to the long-removed script/plugin install; if folks are
adding ActiveMerchant to Rails 2.x projects, they can figure that out
for themselves.
Add NETPAY gateway

http://www.netpay.com.mx

This includes preliminary support for authorize and capture, but they
are not yet supported by NETPAY.

Closes #545.
Merge pull request #547 from Shopify/readme-update

Update README
Balanced: Add amount to refund method signature

The proper method signature for Gateway#refund is:

    def refund(amount, identifier, options={})

But Balanced had:

    def refund(identifier, options={})

With the amount optionally passed in the options hash. This deprecates
the incorrect signature (for backwards compatibility purposes) and
conforms the method to the correct signature.
Orbital: Fix void method signature

Gateway#void should have the method signature:

    def void(identifier, options = {})

But Orbital had the signature:

    def void(amount, identifier, options = {})

This fixes the signature, with a deprecation warning if the old
signature is called.

Also passes the amount (if passed via options) on to Orbital, which
allows for partial voids.

Closes #531.
Orbital: Remove the remote secondary url test

The fallback to the secondary url is already tested in the unit tests,
and the remote test for it was completely broken.