python 3 compatibility fixes
take squares into account when filling the board
create a list of boards while filling them
some comments for the logic
filling boards using uncertainty=1 first (fixes #1)