Reland: Build Mojo apps in sub-dirs, like application packages.

Reland https://codereview.chromium.org/1189703004/
Also fix ShellTestBase for mojo_runner_unittests, etc.
Share and copy asset caching code used by ShellMain.java.

Original description (still correct):
Build Mojo apps in subdirectories, like application packages.

Build all <foo>.mojo targets in a <foo> sub-directory.
Support resources bundled in mojo_native_application.
Remove mojo_application_package (now redundant).
Update hard-coded paths and simplify URL resolution code.

Remove apps bundled in core_services from Mandoline.apk
(network service, surfaces service, view manager)

This would help NetworkFetcher resolve app locations.
(Android apptests host the build dir on a local server)
(but apptests should instead bundle apps in an apk)

BUG=498020
TEST=Mojo runner and Mandoline still work (as much as they currently do :-/)
R=scottmg@chromium.org,sky@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#334547}


CrOS-Libchrome-Original-Commit: 0900ab2febde6e1a273bc7c187ba32d21b85bd84
10 files changed
tree: bdee9d3292253ca3a1953e3b4e676b4e8bb57e93
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/