new tree class to abstract filesystem tree operations