Make use of the MSBuild distributed logger functionality and add a
forwarding logger. When in a multi-proc build, the forwarding logger
will decide which events to forward to the main node to be logged.
Without this, all events are routed and a perf penalty is incurred.
* Tools shim maker and env path handling
Includes component:
* Given executable, create shim (all three OSs)
* Add executable path to Env PATH during first run
* including manual instruction when there is no access
* Upgrade MSBuild references to 15.1.0-preview-000370-00
* Custom logger for MSBuild to receive telemetry events
Had to make the telemetry session ID a static variable so that the forwarding app could use it.
I've tested this all manually and will be writing tests after everyone signs off on the implementation here.