[Android] Support shared library mode for XWalkRuntime when using WindowAndroid.

XWalkRuntime in shared mode requires WindowAndroid to have a share library context
to get resources in shared library.  Use the library context to construct WindowAndroid
in XWalkView.

BUG=https://github.com/crosswalk-project/crosswalk/issues/678 , 666
[Tools] Add increment-version.py.

It is a more generic version of bump-canary-version.sh, and allows one to
increment either the build version (for Crosswalk canaries) and the patch
version (for Crosswalk betas).

Additionally, the new tool is written in Python instead of a mixture of
shell script and Perl, so it also fixes #699.

bump-canary-version.sh will be removed in a follow-up commit because the
existing canary build scripts need to be adjusted to use the new script
after it is committed.
[Android] Disabled the testClearHistory testReload temporarily.
Since the device issue, it can not access the network,
so disabled testClearHistory & testReload temporarily.
It will be enabled later.
Merge pull request #746 from kurli/master

[Android] Disabled the testClearHistory testReload temporarily.
Merge pull request #743 from junmin-zhu/random

[Android] Fix randomly fail issue when copying files for app template
Merge pull request #722 from rakuco/version-increment-tool

[Tools] Add increment-version.py.
Bump version to 1.29.7.0
Merge branch 'master' of github.com:crosswalk-project/crosswalk
[Android] Fork the target for sample app from app template

Sample application should not share the same code with
application template for web developer.
We might want to demonstrate some xwalk's feature in
sample but not in app template.

BUG=https://github.com/crosswalk-project/crosswalk/issues/725
[Android] Implement APIs for external extensions

Similar to native extensions system, we need to allow web developers
or others to write their own extensions. Due to the shared mode, there
are some client classes in runtime client side which are used by
external extensions.

1. XWalkExtensionClient: the base class for external extensions.
2. XWalkExtensionContextClient: the context to be used by extensions to
help get the context.
3. Configuration system: define a configuration system to specify what
kind of extensions to be loaded and created by crosswalk.

So for web developers, an external extension is implemented with below steps:
1. Write the JavaScript code stub same as the native extension system.
2. A new class inherited from XWalkExtensionClient implements the methods
used by JavaScript.
3. Configure the extension in extensions-config.json which should be packaged
in android asset, like:
[
 {
   "name": "myextension",
   "class": "com.example.MyExtension",
   "js_api": "myextension.js"
 }
}

Developers don't have to create and register their extensions. Instead,
crosswalk runtime will load and create them according to the configuration
system.

Next is to add one test case for external extension mechanism.
Bump chromium-crosswalk in DEPS.xwalk.

Bring in the fix in chromium to support android sharing
runtime library. XWalkRuntime in shared mode requires
WindowAndroid to have a share library context to get
resources in shared library.
Merge pull request #751 from wang16/roll_deps

Bump chromium-crosswalk in DEPS.xwalk.
Merge pull request #708 from yongsheng/external-extension

[Android] Implement APIs for external extensions
Merge pull request #724 from sqliu/otcshare-support-share-in-window

[Android] Support shared library mode for XWalkRuntime when using Window...
Merge pull request #731 from wang16/app_demo

[Android] Fork the target for demo from app template
[Android] Only put necessary files in official archive

The official archive will only include:
1. Runtime Library apk;
2. Hello World apk;
3. Application template for developer.

BUG=https://github.com/crosswalk-project/crosswalk/issues/753
Merge pull request #757 from wang16/official_archive

[Android] Only put necessary files in official archive
Integration manifest parser with app build tools.

1. Add "--manifest=/path/to/manifest/file" support in make_apk.py
2. Adjust the icon API in the manifest parser, it shoud provide all
   the icon information from the manifest.
3. Fix the icon path incorrect issue for "--icon" option.
4  Rewrite the "prepare_xwalk_app_template" target with gyp
   due to the bug in gyp system, that "copies" action doesn't respect
   the "dependencies".
5. Add unit test for make_apk.py