I didn't bother optimising the initial dictionary loading: instead I built a precompiled dictionary for each word-length. As graphs of linked word-nodes, they're pretty small.
[epiphany:~/Code/kata19] cmiller% ./nodef.rb ruby gold
dictionary loaded in: 0.397383s
ruby => rubs => cubs => cues => cued => cued => coed => cold => gold
261 nodes touched in 0.020318s