-void trie_put(trie_t**t, unsigned const char*id);
-int trie_lookup(trie_t*t, unsigned const char*id);
+trie_t*trie_new();
+void trie_put(trie_t*t, unsigned const char*id, void*data);
+char trie_remove(trie_t*t, unsigned const char*id);
+void*trie_lookup(trie_t*t, unsigned const char*id);
+int trie_contains(trie_t*t, unsigned const char*id);
+void trie_remember(trie_t*t);
+void trie_rollback(trie_t*t);
+void trie_dump(trie_t*t);