preventing non-numeric user input for credit card number, expiration date, and cvc

I thought this project was cool but I didn't like the behavior where non-numeric characters where deleted after they were typed.

In this commit I prevent the browser default if the character isn't numeric, an arrow key, or delete.

I tried to follow your code style. Let me know if you want me to change anything around.