Options:
#4
is the one I used for my own Python experiment into word games, and it worked nicely.
For bonus points, here's something to get you started on your word program:
import re
startwith = "MOON"
endwith = "GOLF"
cklength = re.compile('.{' + str(len(startwith)) + '}(
)?$', re.I)
filename = "C:/dict.txt"
words = set(x.strip().upper() for x in open(filename) if x.match(cklength))
Words will then be a set of all 4 letter words in the dictionary. You can do your logic from there.