add card, card tests and card factory