add watchman start time and unique root number to clockspec

Summary:
The tuple (watchman start time, pid, unique root id) should uniquely identify a particular clockspec. This guards against

- pid reuse
- adding a watch, removing it, then adding it again

Test Plan: `arc unit --everything` with the added test, plus the full Mercurial test suite

Reviewers: wez

Differential Revision: https://phabricator.fb.com/D913920

Task ID: 2689998

--HG--
extra : rebase_source : 6c3dd71a723a203b5ffb5d5082c348d407e3d91a