Incorporated basic card selection and scoring logic. It still needs refinement for distinguishing chosen cards vs non-chosen.
Introduced CardViewStateType enum to represent whether card view should drawn with face down, card selected, card disabled or normal.
CardView.faceUp - This is now a derived property based on CardViewState.

Included a Overlay layer - to display whether a card has been selected or has matched (no longer selectable) easily. If transparency LAYER is not used then the overlay will blank out the previous drawing (the card contents).