Add reduce task evaluation
Add recursive reduce phase
Add final aggregation task
Merge branch 'feature/reduce' into feature/executor