Refactor RecipeSteps
Refactor all RecipeSteps such that they are DataItems too.
This allows us to describe their input and output in terms of FITS files.
There also gives an implicit one-to-one mapping between these FITS files and the internal in-memory representation, thereby ensuring we can describe both in the same way.
This will furthermore make different recipes possible: very coarse and very granular at the same time, because the interface within recipes and between recipes is now harmonized.