Merge remote-tracking branch 'origin/feature/8588_algorithm_decorator'
refs #8589. Template for new algorithm and tests.
refs #8589. Create a base algorithm class.
refs #8589. Move common toLam to base class.

Move and make adjustments to ensure that everything is still working and that tests still pass.
refs #8589. Move existing functions into base class.

Will still need to do some work around these yet.
refs #8489. Common parameter init to base class.

This has involved making some names common.
refs #8589. Move transmission correction code into base class.

More work will need to be done here because we yet need to separate out the making from the utilisation parts in order for this to be useful to both Correction and Reduction algorithms which use it.
refs #8589. Separate make transmission method.

This method is used by current transmission run method, can also be used by Correction algorithm separately.
refs #8589. Check spectrum numbers of input trans workspaces.

Add unit tests to demonstrate happy-paths for the CreateTransmissionWorkspace alg.
refs #8589. Move trans corr to utilising algorithm class.

The bit that is actually applying the trans corr is not required in the base class.
refs #8589. Call make transmission via algorithm.

This is a better strategy particularly when nested histories become possible.
refs #8589. Make transmission runs not needed on base.

Make transmission runs can be private to the creation algorithm now that the workflow algorithm is calling the creational algorithm rather than using a shared method on the base class.
refs #8589. Use rather than make transmission workspaces.

Use rather than make a transmission workspace if the units are in wavelength.
refs #8589. Remove unused test files.
refs #8589. Improve documentation where possible.
Merge branch 'feature/8589_transmission_workflow' into develop