[Android] Fix the issue that geolocation information can't be fetched.

The geolocation related Web API can't work due to the problem of crosswalk.
The root cause is that the activity status is not initialized so that
internal features like location provider can't get the correct status.
Fix it by passing the application to content layer and add the permissions
in AndroidManifest.xml.

BUG=https://crosswalk-project.org/jira/browse/XWALK-151
[Android] Refine the test case about onPause and onResume.

This patch refined the test case about onPause and onResume on
embedded and shared mode. It's for the runtime client.
Invoke onPause or onResume on main thread, wait for some seconds
to ensure that action is done, get the first title. Then wait for
some milliseconds, get the title again. Compare the two titles.

We can not use the TimerTask directly, because it creates an external
thread which was not executed when the main thread exits.

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

For shared client test:
1. install XWalkRuntimeLib.apk
2. install XWalkRuntimeClientShell.apk
3. python build/android/test_runner.py instrumentation \
--test-apk=XWalkRuntimeClientTest -v -f testPauseResume
[Android] Allow geolocation context permission for crosswalk.

Geolocation context permission has to be handled in crosswalk for Android
port. It's used to allow geolocation access for origins. This fix is to allow
requests from different origins for geolocation information with the
in-memory cache mechanism.
Currently we allow all origins to access the geolocation information
if the web app is granted with the permission.

BUG=https://crosswalk-project.org/jira/browse/XWALK-151
Merge pull request #1117 from wuhengzhi/pauseResume

[Android] Refine the test case about onPause and onResume.
Merge pull request #1113 from yongsheng/xwalk151

[Android] Allow geolocation context permission for crosswalk.
[Android] Add runtime core API copyBackForwardList

1 This class contains the back/forward list for a XWalkView.
XWalkView.copyBackForwardList() will return a copy of this class
used to inspect the entries in the list.
2 Add the API of XWalkView which is needed by the Cordova Container.
3 Implement BackForwardList and WebHistoryItem by wraping
org.chromium.content.browser.NavigationHistory class.

BUG=https://crosswalk-project.org/jira/browse/XWALK-330
[Android] Add runtime core APIs saveState/restoreState

1 XWalkView.saveState() saves the state of the XWalkView to a
Bundle; XWalkView.restoreState() restores the state of the
XWalkView from a given Bundle.
2 Add the two APIs of XWalkView which are needed by the Cordova
Container.

BUG=https://crosswalk-project.org/jira/browse/XWALK-330
[Android] Add saveState, restoreState test cases

Disable one test case as there is a blocking issue in
core test framework.

BUG=https://crosswalk-project.org/jira/browse/XWALK-330