added calculation of effort and refactored logic to Task