Refactoring the package structure