[Android] Add back key support

1 The patch is to add the back key support for the runtime. The
expected behavior when putting on the back button is to go back
to the previous page, but now it results to exit the app.
2 Override onKeyUp() of XWalkRuntimeView to handle this.
[Runtime] Fix application event router observer detach iteration bug
[Extensions] Remove --disable-loading-extensions-on-demand switch

The feature was added for Crosswalk 2. We kept the switch to easily
remove it in Crosswalk 2 in case of regressions, with the plan to remove
it from the next release.

Since the feature has been stable and no regressions related to it were
found in the Crosswalk 2 beta branch so far, we are removing the
switch now.
[Tools] Convert lint.py to Unix line endings

Python on Windows should be able to recognize Unix line ending, but it
makes a difference for Unix-based, because we set it as a script and the
DOS line ending messes up the interpretation of "#!/usr/bin/env python"
line.

This means that we should be able to call on Unix-based systems:

  $ tools/lint.py

instead of having to call python with the script as argument.
[Android][SysApps] Not sharing same device_capabilities_api.js

Tizen DeviceCapabilities should use C++ native helpers as much as
possible. Since there is not corresponding for Java, those changes will
break the Android impl.

For now, duplicate the JavaScript shim for Tizen and Android. It might be
shared again if Java helpers are implemented same as C++ in future.
[Android] Fix launch ActionUri will crash at runtime level

It's because for runtime usage, the NavigationHandler is using
the MixContext, Which needs FLAG_ACTIVITY_NEW_TASK to start
other Activity.

BUG=https://crosswalk-project.org/jira/browse/XWALK-551
RuntimeContext must be destructed explicitly

When MessageLoop is stopped, runtime_context_ must be set to null.
It will call RuntimeContext destruction method, which happened on
MainThread. It blocked download_browsertest.

BUG=https://crosswalk-project.org/jira/browse/XWALK-408
Merge pull request #1210 from cmarcelo/lint-py-line-ending

[Tools] Convert lint.py to Unix line endings
Merge pull request #1219 from yinli/runtime_context_destruction

RuntimeContext must be destructed explicitly
Bump version to 3.32.46.0
Merge pull request #1217 from wang16/runtime_action_uri

[Android] Fix launch ActionUri will crash at runtime level
Merge pull request #1216 from halton/master

[Android][SysApps] Not sharing same device_capabilities_api.js
[Runtime] Add calls to ApplicationEventManager

ApplicationProcessManager will calls OnMainDocumentCreated when main document is
created. ApplicationService will calls OnAppLoaded when Application object is
instantiated.
[Runtime] Add application event extension support

Currently application event extension API follows Chrome.events definition
(https://developer.chrome.com/apps/events.html).

Implementation details:
The event extension is implemented as an internal extension running on UI
thread. Its instance implements application::EventObserver interface to observe
registered events.

When a listener of an event is added for the first time, the extension instance
will save the wrapped dispatchEvent callback. Then when such event is notified,
the extension instance will call the wrapped callback to run all added
listeners. When all listeners are removed from an event, the extension instance
will detach itself from the event through event manager, the corresponding saved
callback will also be removed.

To provide a method to get the event dispatching status a new event
("onJavaScriptEventAck") is introduced. Other observers can attach to it and get
notification when "xxx" event has finished its dispatching in JS as "xxx" in the
arguments.
[Runtime] Add application event API browser test
[Android] Enable test case for presentation API in embedded mode
Extension in embedded mode is now avaialble, reopen the test case for
presentation API
Merge pull request #1114 from xingnan/backkey

[Android] Add back key support
Merge pull request #1223 from kurli/presentation_embeded_test

[Android] Enable test case for presentation API in embedded mode
Merge pull request #963 from seanlong/event_dev

[Runtime] Add application event API support
[SysApps] Move RawSockets to the experimental namespace

It was agreed in some technical meeting that SysApps should be in the
experimental namespace for now.