Refactor of ServiceManagerContext.

In this CL, we refactor the ServiceManagerContext to make sure all of the
services can be registered without any dependency of BrowserMainLoop.
It includes the following changes:
1) Add API StartBrowserConnection() in ServiceManagerContext to start the
   browser connection to the ServiceManager. This API must be called after the
   BrowserMainLoop starts.
2) Make OutOfProcessServiceInfo takes a RepeatingCallbacks to get the process
   name.
3) ServiceMangerContext owns the DeferredSequencedTaskRunner for audio service.
   It was owned by BrowserMainloop before this CL.

BUG=846846,729596

Change-Id: I29725a383e2662fccd8a2fba5fedddc52a8c565c
Reviewed-on: https://chromium-review.googlesource.com/1093021
Commit-Queue: Xi Han <hanxi@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569694}
14 files changed