The compleat cruciverbalist : or how to solve and compose crossword puzzles for fun and profit