Add chrome/browser/apps/BUILD.gn and move Chrome-specific code there

This moves references to c/b/apps from their awkward place in
c/b/extensions to a standalone source_set in c/b/apps/BUILD.gn.

Now, c/b/apps explicitly depends on c/b/extensions, and c/b/extensions
need not explicitlty depend on c/b/apps. (Some circular includes are
still required, e.g. for app-specific API calls within c/b/extensions.)

Apart from BUILD.gn files, the structural changes are:
* moving {apps => chrome/browser/apps}/app_load_service.cc
* adding chrome/browser/apps/browser_context_keyed_service_factories.* to
  handle startup/shutdown tasks

The following gn checks now pass:
* //apps (used to fail)
* //chrome/browser/apps (newly added)

The following gn checks used to pass, and still do:
* //chrome/browser/extensions
* //chrome/browser/ui

The following gn checks still fail, but with fewer errors:
* //chrome/browser

BUG=679971,159366
[email protected]

Review-Url: https://codereview.chromium.org/2789253003
Cr-Commit-Position: refs/heads/master@{#462314}
25 files changed