Add tests for Board and refactor Borad and Field