FIX: non destructive Hill Climbing algorithm

Hill Climbing was called in a destructive way since the table passed in arguments was filled with random values what caused problem when using other algorithms in the same board after Hill Climbing algorithm.
This is now fixed by copying the board in argument in a temporary board.