Create a class `GoodStrategy` which extends `Strategy` such that `Game(GoodStrategy(), CornerStrategy()).player1Won()` returns `True`.
This can not be solved by modifying the `Game`, `Strategy`, or `CornerStrategy` classes in any way.
The following code describes a tic-tac-toe game which takes in two strategies and determines who wins if they play each other. The `Strategy` class defines an abstract method, `returnMove(board)`, which returns a tuple representing where this strategy will move, given a board state.
The `CornerStrategy` class is a subclass of `Strategy` with a concrete implementation of `returnMove(board)`. The `Game` class constructor takes in two strategies. It has a method `player1Won` which determines if the first strategy provided will beat the other if they both take turns alternating between moves.
There are two methods, `playerXWon` and `gameOver` which determine how a game is won and when it is over. 
