Add Chromium environment application test support.

Let Apptests run in Chromium and standalone environments.
Add mojo/public/cpp/application:test_support_standalone.
Add mojo/application/*main_chromium.cc and a GN target.
(MojoMain has base::AtExitManager not mojo::Environment)
Implement mojo/environment *DefaultRunLoop helper functions.

Use these for Chromium environment (w/base) Apptests:
  "//mojo/application",
  "//mojo/application:test_support",

Use these for standalone environment Apptests:
  "//mojo/public/cpp/application:standalone",
  "//mojo/public/cpp/application:test_support_standalone",

TODO: Add an example apptest for env chromium w/base use?
TODO: Use base::LaunchUnitTests, etc. in *main_chromium.cc.

BUG=392646
TEST="mojo_shell mojo:example_apptests" still works.
R=viettrungluu@chromium.org

Review URL: https://codereview.chromium.org/695593002
diff --git a/mojo/public/cpp/application/lib/application_test_main.cc b/mojo/public/cpp/application/lib/application_test_main.cc
index be4e54e..61e3ea3 100644
--- a/mojo/public/cpp/application/lib/application_test_main.cc
+++ b/mojo/public/cpp/application/lib/application_test_main.cc
@@ -10,6 +10,7 @@
 #include "mojo/public/cpp/system/message_pipe.h"
 
 MojoResult MojoMain(MojoHandle shell_handle) {
+  // An Environment instance is needed to construct run loops.
   mojo::Environment environment;
 
   {