Refactoring project structure and adding test project