Several changes related to rendering
added new button component
wrapped TreeWalker in a module