Enable Aura XWalk build by default

Enabled Aura by default for XWalk Linux and Windows builds, also enabled window frame and window header for XWalk Aura windows on Linux desktop.

The NativeAppWindowViews::CreateNonClientFrameView is now overridden only for Windows in order to make visible Aura window frame&header on Linux desktop (NativeAppWindowViews::CreateNonClientFrameView had been overridden to show OS window decoration instead chrome-style UI, however the used views::NativeFrameView works only on Windows).
[Android] Add python script to parse and extract XPK file

The script will do:
1. Check the magic file header;
2. Verify the signature of the XPK file;
3. Extract the content of the XPK file to some folder.

It is used by make_apk.py.

BUG=https://github.com/crosswalk-project/crosswalk/issues/738
[Android] Add the instrumentation test for runtime client.

This patch is the implementation of instrumentation test for
runtime client, it tests the Runtime APIs in the file "XWalkRuntimeClient.java".
This patch contains the test about embedded and shared client.

Implement a callback function in the test client, transfer it to
XWalkCoreProvider, then set it to the XWalkClient.
In the XWalkClient's callback, invoke the callback functions
which we defined, notify the test client about the page status.

For embedded client test:
    1. install XWalkRuntimeClientEmbeddedShell.apk
    2. python build/android/test_runner.py instrumentation \
       --test-apk=XWalkRuntimeClientEmbeddedTest -v

For shared client test:
    1. install XWalkRuntimeLib.apk
    2. install XWalkRuntimeClientShell.apk
    3. python build/android/test_runner.py instrumentation \
       --test-apk=XWalkRuntimeClientTest -v
[Runtime] Change the runtime database backend to sqlite

Using Sqlite database instead of JSON format database, it will guarantee
data security and data integrity.

The source code is refered to the file sqlite_server_bound_cert_store.cc in
Chromium for the usages of sql::Connection.

The applications information will migrate from JSON DB to the new SQLite
DB automatically.

In Tizen package info installer, change the owner of SQLite DB files to "app" user,
since these files will access by "app" user when launch from home screen.

After bumped to Chromium 31, when compeling the xwalk with this patch, in
application_protocols.cc, there should be an error said: invalid use of
incomplete type ‘struct base::SequencedWorkerPool’, add the header file will
solve this issue.
[Runtime] Clean the JSON format applications database source code

The JSON format DB will not be used anymore, using SQLite DB instead, so
remove those excess code.
[Android] Calling enableRemoteDebugging multiple times should not restart server

If remote debugging is already enabled, then just return the debug URL.
Bump version to 2.31.16.0
Merge pull request #811 from wuhengzhi/runtime_client

[Android] Add the instrumentation test for runtime client.
Merge pull request #800 from wang16/xpk_parser

[Android] Add python script to crack XPK file
Merge pull request #875 from gramakri-intel/remote_debugging

[Android] Calling enableRemoteDebugging multiple times should not restart server
[Extensions] Pass XWalkExtensionFunctionInfo as a scoped_ptr

We were previously passing it as a const reference. Now we are giving
the ownership to the recipient. The next patches will be fixing
the thread safety of this class and the limitation that it cannot
outlive the XWalkExtensionInstance.
[Extensions] Make it safe for XWalkExtensionFunctionInfo to outlive XWalkExtensionInstance

XWalkExtensionFunctionInfo will now send the results to the
XWalkExtensionFunctionHandler, which is a weak reference. Checking if
the weak reference is valid only works on the same thread which
the weak reference was created, but this going to be fixed in the
upcoming patch.
[Extensions] Add more XWalkExtensionFunctionHandler unit tests

This new test is ensuring that calling PostResult in a
XWalkExtensionFunctionInfo after the XWalkExtensionInstance is deleted
doesn't have any bad side effect.
[Extensions] Make the PostResult thread safe

It will now re-post the message to the same thread as the XWalkExtensionFunctionHandler
to certify that there is no race condition when checking if the weak reference
is valid.
Merge pull request #866 from tmpsantos/function_handler

[Extensions] Refactoring of the XWalkExtensionFunctionHandler
Merge pull request #838 from pozdnyakov/Aura_by_default

Enable Aura build by default
Merge pull request #801 from takethathe/sqlite

[Runtime] Change the runtime database backend to sqlite
[Extensions] Separate loading JS code from extension module registration

This is a step towards loading JS code on demand.
[Extensions] Make XWalkExtensionClient unaware of ModuleSystem

XWalkExtensionClient job is to communicate with its Server, and provide
access to instances. Currently XWalkExtensionRendererController knows
all those objects, so it can glue the pieces.
[Extensions] XWalkExtensionModule create its instance

Now it's up to XWalkExtensionModule to create its instance in the
Client. This is a preparation for only creating an instance when the
extension is loaded.

As part of the change, the RemoteRunner abstraction was removed. In the
end, it wasn't bringing us much separation, especially now
ExtensionModule needs a way to create instances (which is Client job).

The runner had an interface that the ExtensionModule implemented, and
was used to tell it about messages from native. This interface was moved
to XWalkExtensionClient::InstanceHandler.