[Android] Add code stub for Android extension system

For Android, we'll build a Java extension system which is independent
on current native extension system. It sits on native one but with
an abstract layer.

Since extension will be used by developers, limited classes will be exposed.
Now XWalkExtension and XWalkExtensionContext will be public.
[Android] Use XWalk's icon for RuntimeLib

BUG=https://github.com/otcshare/crosswalk/issues/444
Simplify base::Value manipulation in internal extensions

Remove the scoped_ptr that existed only for the sake of deleting the
values. Now we get their strings, if all verification pass, we directly
remove (and delete) the two values and pass the rest forward.

This patch also checks for the arguments list having size at least 2
instead of just different than zero, since we need at least two first
items.

This change has a small benefit of working with newer versions of
base/values.h, easing the work of updating Chromium version used by
Crosswalk.
Port Chromium r204115 to gyp_xwalk.

  Prepare gyp_chromium for moving Source/core/core.gyp/core.gyp up a
  directory

  This adds a new import path for pymod_do_main (and removes an old one).
  After core.gyp moves up a directory, the old path can be removed.

  R=abarth@chromium.org

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

This is needed to make sure xwalk keeps building when we bump our Chromium
and Blink versions.
Merge pull request #464 from rakuco/gyp_xwalk-future-proofness

Port Chromium r204115 to gyp_xwalk.
Add a description stub to the IDL files

The IDL parser of the newer Chromium release requires a description
string on every IDL namespace otherwise it will assert.

The patch adds stubs, but eventually we should add a more complete
documentation, with links to specs, etc.
Merge pull request #465 from tmpsantos/idl_docs

Add a description stub to the IDL files
Merge pull request #442 from cmarcelo/internal-handle-message

Simplify base::Value manipulation in internal extensions
Make our v8 usage friendlier to upcoming changes

In V8 API, there was a big change (already in trunk but still not in our
branches) on the way v8::Persistents can be created / used. Before the
change, v8::Persistent could act as a v8::Handle, so we could "use" a
value directly. With the new behaviour, we need to unwrap them for
using.

This patch adds the code to unwrap them, reducing the amount of change
needed to run Crosswalk in trunk.
[Android] Refine the customize tool for app template.

1. Add "--entry_root" and "--entry_path" for package app.
2. Change "--url" to  "--entry_url" for hosted app.
3. Create new folder for customized app.
Merge pull request #466 from cmarcelo/v8-future-proof

Make our v8 usage friendlier to upcoming changes
Merge pull request #446 from junmin-zhu/customize

[Android] Refine the customize tool for app template.
Merge pull request #460 from wang16/icon

[Android] Use XWalk's icon for RuntimeLib
Allow xwalk to define custom vars when fetching chromium's dependencies
[Android] Fix the context issue to let content create windows

Content Layer needs getSystemService to get window manager. And it
should be created from Activity.
[Android] Enable WebGL by default in XWalk.

WebGL is disabled by default on Android, in XWalk, we have to explicitly enable
it in switches.
Merge pull request #471 from sqliu/otcshare-webgl

[Android] Enable WebGL by default in XWalk.
Merge pull request #462 from yongsheng/context

[Android] Fix the context issue to let content create windows
[Android] Move video full-screen support implementation into Runtime Core
Merge pull request #431 from yongsheng/extension

[Android] Add code stub for Android extension system