Notification scheduler: Implements a class to schedule background task.

This CL adds the BackgroundTaskCoordinator class, which determines the
time that background task should run.

TBR=peter@chromium.org

Bug: 963283,930968
Change-Id: I82ecd3bb15ac2df73a546afa94c25fad5fded36d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1614501
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662477}
15 files changed