iATS Payments gateway support

This commit adds support for the `purchase` and `refund` operations
on the iATS Payments gateway. This replaces the existing iATS
implementation (http://cl.ly/V8DE) and supersedes another, existing,
pull request (http://cl.ly/V88q).