Remove some content_child dependency from content_common

content_common does not have an explicit dependency on content_child in the GYP
files, yet depends on symbols from content_child.  This causes order-dependent
linker errors on some builds (e.g. win8_aura).  Fix this by refactoring
content::ChildThread to remove the need for that dependency, namely:

* Refactor content::ChildThread to allow users to access (and pass around) its
  content::MessageRouter member for use in IPC messaging, instead of passing
  around the ChildThread itself.
* Remove explicit check for ChildThread in content::VaapiVideoDecodeAccelerator.
* Update DEPS files accordingly.

BUG=351948
TEST=local build on desktop Linux

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256787 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/content/gpu/gpu_child_thread.cc b/content/gpu/gpu_child_thread.cc
index 56614c3..8f67d68b 100644
--- a/content/gpu/gpu_child_thread.cc
+++ b/content/gpu/gpu_child_thread.cc
@@ -150,7 +150,7 @@
   // IPC messages before the sandbox has been enabled and all other necessary
   // initialization has succeeded.
   gpu_channel_manager_.reset(
-      new GpuChannelManager(this,
+      new GpuChannelManager(GetRouter(),
                             watchdog_thread_.get(),
                             ChildProcess::current()->io_message_loop_proxy(),
                             ChildProcess::current()->GetShutDownEvent()));