Refactor file tree and add visualizer
Update .gitignore