all test cases complete & passing; added documentation; refactored: now Tree is a singleton that provides helper methods, but cant be instantiated