makewords -> tr ' ' '\n'
unique -> uniq
lowercase is easy, tr a-z A-Z
mismatch -> loop and grep over the wordlist and check if the output on non-zero (no match), print that word. A trivial script. (while read line ; do if (grep -q "$line" /usr/share/dict/words) ; then ... )