Browser watcher, part deux.

Implementation of the watcher client class and its tests.
See https://codereview.chromium.org/717223002/ for full change.

BUG=412384

Review URL: https://codereview.chromium.org/743463002

Cr-Commit-Position: refs/heads/master@{#304693}
8 files changed