1 calcular incrementalmente
4 Criar arquitetura da ia em si
5 hierarquia de classes herdando de Enemy
6 tratar empate por repetição de jogadas DONE (ignora posições já atingidas no jogo)
7 quando a vitória é garantida nem sempre ele vai pelo caminho mais curto. sem tratar empate por repetição pode ser que acabe empatando DONE (prioridade para o caminho mais curto para a vitória)
9 aumentar a profundidade quando ainda está sobrando tempo
10 repetição de tabuleiros
14 mudar Move para ser só um inteiro em vez de um par de chars
15 board saber de quem é a vez para não ter que ficar passando por parâmetro
18 Tratar início do jogo DONE
19 Iniciar, parar, computador começa, usuário começa DONE
20 Conflito quando usar o load DONE
21 salvar mais coisas no log DONE
22 ou permitir mudar as opções após o load (mais fácil, menos robusto) DONE
23 iniciar faz o computador jogar caso seja a vez dele DONE
24 Tratar fim do jogo DONE
25 Condição de vitória DONE
27 Tratar intervenção do usuário quando é a vez do computador DONE
28 Só pode pedir para parar, talvez nem isso DONE