moved from the busted-trie implementation that I was really working with to something that should be more sound: a ternary search tree
gave depth meaning instead of using "same" pointer which should save some small amount of space

updated test toolkit to be a little better