refactoring

- renamed choosenRow to chosenRow(Game.cs)
- removed GenerateRandomNumber() method from Game.cs(redundant, should
use rand.Next() directly instead)
- changed logic in SetMines() method (Board.cs) - uses a while loop
instead of subtraction from the iteration variable
- NOT DONE: introduced new variable in the Menu() method(Game.cs) -
'string input', used to store the user input. Prior to this 'str' was
used to store this.
- refactored catch blocks in Menu() (Game.cs) - now they're handling
only the expected exceptions
- renamed variable 'field' to 'cell' in OpenField(Board.cs)
- renamed private class variable 'fields' to 'field' (Board.cs)
- renamed CheckHighScores() method to IsQualifiedForScoreBoard()
(Game.cs)
- changed logic in CheckIfWin() method - instead of scanning every time
the method is called to see
which are the opened fields, we keep their count using a private
variable 'openedFields' in the class
- removed method CountOpenedFields() from Board.cs. Introduced new
property to replace it - OpenedFieldsCount
which gives readonly access to the variable holding this count
- removed unnecessary cast from Top() method
- added unit testing project, some basic tests