I want the functionality that achieves all this in the factory
because otherwise it is going to be massively duplicated (a common
method in the future abstract ProcessFactory superclass should take care
of this, not several separate functions in the parsing functionality).