Introduce the image_decoder service

Moves OOP image decoding from a one-off utility process IPC
to its own service_manager service. This is then hooked up
by Chrome to be launched by content's utility-process-based
sandboxed service launcher.

This serves as a precursor to extracing process launch
code from content, as it defines a service which is used
in production across all platforms that support multiprocess.

The ImageDecoder helper defined in src/chrome is substantially
simplified here, as it's reduced to a thin wrapper around the
image_decoder client library.

In order to support Chrome content_browser packaging the
service, this also adds support for packaging services within
manifest overlays by introducing a new service_manifest_overlay
GN template.

Finally this also introduces a new service_unittests binary
as a default home for service implementations to stash their
unittest sources. Follow-up work will add this test suite to
bot configurations.

BUG=654986

Review-Url: https://codereview.chromium.org/2475543003
Cr-Commit-Position: refs/heads/master@{#431605}
diff --git a/chrome/browser/DEPS b/chrome/browser/DEPS
index 0eebd89..6bc62ef 100644
--- a/chrome/browser/DEPS
+++ b/chrome/browser/DEPS
@@ -37,6 +37,7 @@
   "+media/cdm/cdm_paths.h",
   "+media/midi",  # For midi switches
   "+media/mojo",  # For mojo media services.
+  "+services/image_decoder/public/cpp",
   "+services/service_manager/public/cpp",
   "+services/ui/public",
   "+ppapi/c",  # For various types.