Always update card type for all card constructors

This will fix Amex number validation when using card constructors with address/zip. Otherwise, validateNumber() always returns false for Amex.