Need to add board state consuming concurrency
The problem with the display of the board state, is that the board state
is being read without any mutual exclusion. Although I am only printing
the board state just before getting the player channels to fire another
shot, it's ultimately possible the board state will print before OR
after they have made their next move. I need some way to make sure that
the players cannot fire their next shot on the board until the board's
state has been read. I can probably get the gameboard to do that, but
then I'll have to create a GameBoard.ReadState() instead of depending
on GameBoard.String(), which could be called at any time.