Reduce function calls and improve console output.

Inline the PlayerPieceAtPosition function and reduce calls to
GetTileState when checking if the game is over to improve speed.
Increase the console size and print the states search per millisecond.
Use bit masks to check if the game is over.

Generate all possible combinations of four pieces with which a player
would win as masks in the Grid constructor. Then, a player has won if
the player's pieces contains one of the masks.
Improve the evaluation function.

The evaluation function now uses the number of 3 piece streaks which the
player has. This is calculated by generalising the method for checking
if the game is over.