[Android WebAPK Refactor] Minimize code in MainActivity.java 5/X

This CL:
- Makes code in MainActivity.java more modular.
- Splits HostBrowserLauncher into:
  - a part for selecting the host browser
  - a part for launching the host browser

This CL is in preparation for:
- Introducing a version of MainActivity.java for NewSplashWebApk.apk
- Implementing the logic to determine whether to show the splash screen
inside of the WebAPK or inside of Chrome. The host browser must be known
in order to make this decision.

BUG=817263

Change-Id: I024e390c57b4da09fe0e4e2fcbaf616c6bad2e8b
Reviewed-on: https://chromium-review.googlesource.com/1220054
Commit-Queue: Peter Kotwicz <pkotwicz@chromium.org>
Reviewed-by: Xi Han <hanxi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#593421}
13 files changed