This is a tree-node structure that will hopefully be reusable for other projects, like the folder and proflib projects