remove-known-digits always loops until no change
refactor to remove duplication, rename and extract functions
add a message when board becomes invalid