Implement a site engagement score based on time-on-site.

Time spent on site is an important indicator of how important an origin
is to a user. This CL detects time on site by registering callbacks to
handle user input, using any mouse or keypress events as a proxy for
a user spending time on the site. Input events are checked for at
regular intervals, with site engagement updated if input has been
present in each interval.

BUG=464234

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

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