Updated formatter to enable Off/On tags.
Updated license header.
Refactored Card and Hand classes into interfaces to enable custom implementations. Added ImageCard and TextCard classes to support cards based on images and text, respectively.