Project setup, Refactoring strategy pattern