External validator: extract generic process code
What
This MR extracts and generalizes the code for launching and managing external processes out of the validator.
Why
The generic external process code can be reused to implement some processing in an external process using message based communication on unix sockets. In particular this allows to reuse this code to implement an external injector.
How
The part that of the external validator that is not validation dependent is extracted in a functor provided by lib_base_unix.
Manually testing the MR
Refactoring, CI.