[Android] Handle android Action Uris

These Uris are used for android intent to start
activities to:
1. make phone calls;
2. send sms;
3. send emails;
4. look up map for geolocation;
5. search apps in market.

BUG=https://crosswalk-project.org/jira/browse/XWALK-226
    https://crosswalk-project.org/jira/browse/XWALK-155
    https://crosswalk-project.org/jira/browse/XWALK-154
TEST=org.xwalk.core.xwview.test.HandleActionUriTest
[Android] Disable one test case about remote debug.

This patch disabled the test case "testDisableRemoteDebugging".
It is failed on trybot, but passed on buildbot. It can not be
reproduced on local machine.
It will be enabled later when we find the root cause.
[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
Merge pull request #1126 from wuhengzhi/remotedebug

[Android] Disable one test case about remote debug.
Merge pull request #1091 from xingnan/backforwardlist

Add core APIs: copyBackForwardList, saveState, restoreState
Merge pull request #1094 from wang16/external_protocol

[Android] Handle android Action Uris
Refactor XWalkBrowserMainParts: remove '#ifdef' hell

XWalkBrowserMainParts class had become an #ifdef hell, and had got even worse with all these HasSwitch(kInstall) and so on – that needed fixing, otherwise the code could become hard to maintain and the likelihood of bugs appearance could increase.

This patch introduces a separate "browser main parts" class for Mac, Tizen and Android derived from base generic XWalkBrowserMainParts class, thus removing platform specific functionality (and ifdefs) from XWalkBrowserMainParts.