Split StringTree and StringTreeNode into separate files