This module provides types and functions for managing a strongly typed tree of depth 4. Each level of the tree can have its own type, and each level can contain Data either of that type, or the leaf type.