Recursive Brute Force Algorithm
- Find all empty cells
- Check for each cell the valid numbers
- Sort them on the cell with less possible combinations (and start from there)
- Select the top cell (with the less combinations)
- Make copies of the sudoku board fillin the value and for each combination and start execute #1 on each board