restructure all project, add xml parser