Reorganised Code. Added Matches function to Card but not sure if it's a good name.