CHashTable
TinyMUX uses this to organize its in-memory data.
CHashTable uses CHashPage and adds in-memory extendible hashing. The bucket is the CHashPage, but otherwise, it works just like the standard extendible hashing that you'll find on any website. There are page splits where one CHashPage becomes two, and there are directory splits where the directory doubles in size.
Currently, no attempt is made to merge buddy pages or collapse the directory. That is, the structure only grows.