REVIEW-1858: spec updates
Tidied up integration test and added test for incremental build with all input files removed
Ensure UpToDateState implementations re-use previous state where possible
Spec updates
Improvements to DSL for incremental tasks
- Renamed TaskExecutionContext -> TaskInputChanges
- Provide separate action for out-of-date files and files that have been removed
- Don't consider input files as 'added' when non-file input is out of date
- renamed TaskExecutionContext.rebuild -> TaskInputChanges.allOutOfDate
Update spec to reflect new DSL
Added test for incremental task execution when task class changes