There's an implementation of one here that I've messed with, but it's a little expensive on the setup side.
http://www.pathcom.com/~vadco/dawg.html
The final result is that each node is stored in a 32bit word with the possible characters limited to a 5 bit field. 1 bit flag for word endings and I believe he employed offsets with the rest of the bits to perform the directed lookups of the other characters in a limited A-Z uppercase only alphabet. These types of graphs tend to extremely fast at runtime, but like I mentioned, the setup is costly. However, if you were embedding this in a device this would definitely be a worthwhile investigation. This is one of those cases where a data structure fits a very constrained, but well defined requirement.
http://lampwww.epfl.ch/papers/idealhashtrees.pdf