Restructured the entire project to use DOM based parser