[Extensions] Add a test that another extension depends on another

In this test an extension ("another") depends on two other extensions ("outer"
and "outer.inner"), by using objects that are provided by those extensions.
[Android] Fix ExtensionBroadcast test

With load on demand enabled (the default now) instances are only created when
needed. This test is failing because it assumes that a new Extension instance
is created for the iframe, and as the code running in the iframe doesn't need
the any instances they are not created.

This fixes substitutes the assumption that the instance will be created, when
the context is created by explicitly calling the extension.

With this assumption fixed, the test can be enabled back.

BUG=#984
Merge pull request #993 from vcgomes/nested-load-on-demand-test

[Extensions] Add a test that another extension depends on another
Merge pull request #1026 from cmarcelo/fix-disable-extension-process

[Extensions] Register external extensions when EP is disabled
Merge pull request #1013 from vcgomes/fix-android-test-with-load-on-demand

[Android] Fix ExtensionBroadcast test
[Extensions] Make RP synchronously ask for the extension channel handle

There are situations in which Render Process (RP) gets a navigation
request before it has all the information from the Extension
Process (EP).

Currently we don't enforce any ordering, EP is created, tells Browser
Process (BP) about the new channel handle created for EP<->RP
communication and BP sends this handle to the RP. Before all this
happens, a navigation may occur and a new v8::Context is created without
all the JS code for extensions in EP.

The new code changes so that RP asks BP (synchronously, to ensure
ordering) for the channel handle. This message is handled by
XWalkExtensionProcessHost using a delayed reply handler, allowing it to
launch the process and wait for the channel creation before replying.

Note that in EP we change the order of the channel creation, we first
load the extensions and only then register the channel. This guarantees
that when RP connects to the channel, EP will have everything ready.

This patch should fix the cases at hand -- because we enqueue the
"register extensions" message in the channel and RP process it before
navigations.

To ensure this works regardless implementation details of the IPC, a
follow up change will be necessary: make the XWalkExtensionClient
ask (synchronously, to ensure ordering) for the extensions, instead
waiting for it to be sent from the XWalkExtensionServer. With hindsight
this makes completely sense.