I'm not sure what you mean by "flexibility for the formatter implementation". As I see it the runner already forces the formatter to be a separate process. How would gen event decrease flexibility here?