Tile matching puzzle