Move to utils.
Refactor board representation to make lookups quicker.
Refactor utils.
Minimax implementation.
Added test cases.