#134: Credit card errors

I also included a couple of miscellaneous fixes in this pull request which I happened to be working on at the same time.
You read my mind on how I thought we could reimplement this. Beautiful