FIX : was not looking at all values in heuristic function

-My for loop was going from 1 to boardSize-1, so skipping the 9 in this case
-Still does not allow to converge to a result
FIX : remove more useless states when stuck

- When one node N1 was stuck (no values possible for a location), we returned an empty action list to show that this node won't go to the goal even if we filled other locations.
- That was not enough : when returning to the father node P, it would explore its other children {N2...Nn}. This is a problem because if those other children were not filling the same location that N1 did, then we were ignoring the fact that this location couldn't be filled with P configuration.
- This was really heavy : all those children would find the same stuck location at some point, but would then consider all the other locations them too!
- This fix is going to define when a node N1 is stuck and store the stucked location, then :
-- If we consider the next child of P, N2, and it's not trying to fill the stuck location, we return fail (P has no interesting actions)
-- If this child N2 tries to fill the stuck position, then we give it another shot with that child. If it fails repeat the process.
-- When the father has been ruled out (returned fail), the search algorithm will see that this one was not stuck, so it will be able to try its "brothers"
- Bad points :
-- This needed to know the stucked XYLocation therefore to be able to read a Sudoku. Therefore this search algorithm is specific to our problem.
-- This is not implemented on the other search algorithms. We'll have to do it for best-first too!