[OC-6569] Rework generation of run_id to be in client

Generate run_id on client and send to server on run begin
Add uuidtools as dependency for reporting resource reporter
Use generated run_id in specs, checking it's passed through correctly
[OC-7356] Protocol Version for Reporting

- Add protocol version header
- Handle reporting protocl version mismatch error
- Clarify message when client protocol version is wrong for reporting
- Modify tests to have extra header passed into mocks
[OC-6939] Use start_time/end_time from chef-client

Set start_time/end_time in reporting start/end messages
only post exceptions if we've got the node setup
[OC-7370] Rename node_run begin action to start