* 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