Refs #9984 Add correlation chopper info to the Corelli IDF.
Refs #9984 Add blank CorelliCrossCorrelation alg, using class_maker.
Refs #9984 Read in WS, instrument and chopper info.
Refs #9984 Got cross-correlation doing something.
Refs #9984 Cleanup and small fixes.
Refs #9984 Fixed weights (maybe).
Refs #9984 Added parallel and progress.
Refs #9984 Added weight errors.
Refs #9984 Unit test added.
Refs #9984 Change how chopper period is determined.
Refs #9984 Add check for sorted workspace.
Refs #9984 Check bounds of tdc index.
Refs #9984 Fix check bounds of tdc index.
Refs #9984 Moved workspace validators to validateInputs.
Refs #9984 Moved more things to validateInputs and other cleanup.
Refs #9984 Add some documentation and usage example.
Refs #10354 Fix bug in ProgressBase

ProgressBase would fail to report progress after a call to
resetNumSteps. This was due to m_last_reported being left at a high
value, filtering any new progress reports.

We now properly reset the state during resetNumSteps.
Refs #10354 Optimise SaveParameterFile

Poco was hopeless. The only way to get around the O(n) bottleneck
required accessing private members of Poco::XML::Node.

As the XML output was relatively simple, we can instead just write the
same thing ourselves, manually.

On my machine this brings SaveParameterFile's performance to be the
same as LoadParameterFile's performance, rather than 5-10x slower.
Refs #10354 Improve SaveParameterFile accuracy

* Output detector id when possible
* Do not output insignificant position differences
* Do not try to be too clever with relative parent positions
Refs #9984 Add t0 formula and applied it in the cross-correlation.