Code restructuring

Moved the projects, added new project, restructuring of code, code
re-factoring