PNaCl: Use Chrome IPC to talk to the translator process, instead of SRPC

This is the last remaining use of SRPC.  (I'll remove the remaining
SRPC plumbing in follow-up changes.)

Change pnacl_translate_thread.cc to send its request using Chrome IPC
instead of SRPC.  Similarly, change irt_pnacl_translator_compile.cc to
receive its request this way.

 * Generalise GetHandleForSubprocess() to work for this other process.

 * Use std::string instead of std::vector<char> to avoid needing to
   make an extra copy when creating
   PpapiMsg_PnaclTranslatorCompileChunk.

BUG=302078
TEST=e.g. NaClBrowserTestPnacl.PPAPICore (tests PNaCl translation)

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

Cr-Commit-Position: refs/heads/master@{#368312}
diff --git a/ppapi/proxy/nacl_message_scanner.cc b/ppapi/proxy/nacl_message_scanner.cc
index 5011501..6ea9adf 100644
--- a/ppapi/proxy/nacl_message_scanner.cc
+++ b/ppapi/proxy/nacl_message_scanner.cc
@@ -364,6 +364,7 @@
     CASE_FOR_MESSAGE(PpapiMsg_PPBAudio_NotifyAudioStreamCreated)
     CASE_FOR_MESSAGE(PpapiMsg_PPPMessaging_HandleMessage)
     CASE_FOR_MESSAGE(PpapiPluginMsg_ResourceReply)
+    CASE_FOR_SYNC_MESSAGE(PpapiMsg_PnaclTranslatorCompileInit)
     CASE_FOR_SYNC_MESSAGE(PpapiMsg_PnaclTranslatorLink)
     CASE_FOR_REPLY(PpapiHostMsg_OpenResource)
     CASE_FOR_REPLY(PpapiHostMsg_PPBGraphics3D_Create)