Pepper: Make StartSelLdr asynchronous.

Changing the trusted plugin to use Chromium IPC instead of SRPC requires that
we create another channel between the renderer and plugin for communicating the
existing SRPC messages.

This channel will be created in response to the StartSelLdr request. Since we
need that channel to be available immediately, StartSelLdr should not finish
until the created channel is available for use. This requires that we make this
operation asynchronous.

SyncChannel creation is asynchronous because we must wait for the channel to be
connected before attempting to use it for Send(). 
As part of connection, OnChannelConnected must be called on the thread
that created the SyncChannel.

In local testing, calling Send() before the channel had a chance to 
connect led to deadlock.

BUG=333950

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250461 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 250461
Clang update script: use GYP's mechanism for finding MSVS

Developers and buildbots don't generally have Visual Studio on PATH. Use
the mechanism from GYP to find it when building Clang.

BUG=82385
NOTRY=true
TBR=rnk

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250462 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 250462