add project-explorer, refactor emmet-mode