Spin-off of Project Memory++

You've seen how to make a basic "Memory" game, but there's lots more you could do with it. Extend the game, using your own ideas or some of ours below:

• Add a hover state to the tiles, so that they change color when your mouse is over them.
• Add a timer to the game, so that part of the score is how long it took the player.
• Make a way cooler win state - maybe something like all the tiles cascading down the screen?
• Allow the player to start a new game with a button, instead of having to click Restart.
• Give the player an option to choose their board size.
• Implement a two-player mode - either where the second player is programmatically controlled (the program randomly or smartly picking tiles), or manually controlled (if there are two players in front of same computer).