continues refactoring with moving validation of phrase to initialize and improving clarity of method arguments