Treeselect component - first draft