Correct best score setter

Best score was previously not checking for zero, and then since the
method is called per-grid-update, was setting best score to 4 (the
result of the first tile merge) which cannot be beaten.

We now only update the best score if the user has won.