working except the stuff that relies on card number
cleaned up for submission