base command and delete command implemented and tested. Refactoring: introduced fake objects to test objects that have dependencies on tree nodes and viewstate