Refactored project with new packages