Respond with authorization failure with some credit cards

Now, if we try to authorize the card with the number `4242 4242 4242 4242` we will respond with an authotization failure.

To implement this I need to store the real card number on the database. Of course this mock will be not used on production but be aware that it is storing the credit card information before inputing you real credit card number on QA.

There are some changes to make possible to access the order attributes using methods instead of `[]` accessor. I made this because we need to return the masked credit card number when reading the information but store the real number. So we return the masked value when accessing `order.card_number` and to not having two different ways to access the attribute now we don't implement `[]` anymore.
OMG! True.