initial implementation and tests for card class