Safely handle unknown AVS code for card type

If the AVS code is not defined in AVS_RESPONSE_KEYS, don't raise an
exception.
Safely handle unknown status response codes
Use FinalStatus to check for transaction success

As officially recommended:
> You should always base the approval/decline of your API authorization
> request on the 'FinalStatus' field you receive back from us.
Add Mercury response codes
Formatting
Fix double lookup
Merge pull request #28 from d10n/master

Improve PlugnPay robustness