backup branch commit
file structure changes
Commits first refactoring with UT