Mercury gateway updates

These are changes to the Mercury Gateway needed to pass a recent Mercury integration certification.   The Mercury Developer Integrations representative I worked with for the certification was Michael Mantineo, mmantineo@mercurypay.com.  The changes included in this PR are:

    * when parsing mercury response if ref_no is not present use invoice_no for ref_no

    * include AcqRefData for PreAuthCapture as well as reversal

    * default to partial auth deny
I'm concerned that this is changing the default; now a flag has to be set to get the old behavior? In general I'm really dubious about adding another flag here. Why is it even needed?

(Also, if you use `and` in Ruby you're generally gonna have a bad time. But not a big deal since whoever merges can change to `&&`.)