* add filetree viewmodel * added attribute toggle * these views are really controllers * fix collapse all dir when selected file * determine filetree upperbound dynamically * support bounding cursor movements in the view model * added first view model test case * added test cases for filetree viewmodel