Forced some positions to never be considered via dummy characters.

- There are two possible dummy characters for each word. One at the beginning and one at the end. We calculate when they are needed and place them appropriately.
- Made the final crossword output a bit more readable.
- Made the code slightly more readable by adding some comments and changing the layout a bit.