move algorithm meta-information into a separate class
The idea is that this should make meta-data handling more robust, as well as make it easier to add some more code, and reduce some code-duplication.
Once this is in, we can then start adding some more meta-information in, like the list of selection decorations used.