Localization for other languages.
There are only two places where this would need to be done. The menu is one, the other is the Message to the user annoucing that the puzzle is solved. Most of the material that I have read on the subject recommend to use the String table in the resources to store the message and menu strings the user will read, one String table per language.
One solution that came up is to use resource DLLs. See the following page at CodeGuru for further information.
First off, what changes would need to be made where the mouse cannot be used? The program then needs to handle keyboard input. Which keys will be used for pointing? for selecting the pointed to cell? Can the User change these input keys?
Also, how will the selection be highlighted? One way would be to manipulate the cursor so that it will point to the proper cell as the user uses the keyboard. Another would be to change the display to make the selected cell stand out.
As this program is visual in nature, how can vision issues be addressed. In addition to blindness, there is colour-blindness. Should the user be allowed to adjust the colours? make them mono-chrome?
There is a very good chance that users will complain about the puzzles being impossible to solve. So the solutions need to be documented. How about automating the process?