fixed generator for initial puzzle configuration

The search was too constraint before. It ruled out perfectly
fine (i.e. unambiguous) puzzles. Since the constraints are now quite
conservative we still generate ambiguous puzzle configurations and thus
have to restart search if we find such ambiguous puzzles.