Introduce a standalone tool
This commits extract parcoach's logic to a standalone library, and creates two interfaces to use it:
- a pass plugin (similar to what has been done before)
- a standalone tool
Both the parcoachp helper and the parcoach binary are interchangeable, the main advantage of the standalone tool is to have accurate coverage report. Both interfaces use the same 'RegisterPasses' endpoint to populate the ModulePassManager so the behavior should be exactly the same.
This is a first step towards #10 (closed).