[Application] Move ApplicationSystem creation to a factory function

This will be used to provide different subclasses for the different
platforms. The factory function isolates the caller code from this
detail.
[Application] Create ApplicationSystemLinux

This commit gets rid of the general interface ApplicationSystemProvider
that wasn't bringing anything to the table besides memory management.
Other platforms that will use run-as-service mode should add their own
needed objects in the platform specific versions of ApplicationSystem.

The ApplicationSystemLinux now creates the service provider if
needed. The function is_running_as_service() was made virtual (and
renamed to reflect that is not a simple accessor anymore).
Merge pull request #1294 from cmarcelo/app-system-linux

[Application] Get rid of the general ApplicationServiceProvider interface
Bump version to 3.32.51.0
Merge pull request #1295 from zliang7/dev

[Tizen] Move sensor related files to xwalk/tizen
[SysApps] Add a wrapper to make Promise work with Internal Extensions callbacks

Promises are a really nice fit with the Internal Extensions callbacks, because
they are single shot (you fire it once and forget about it).

We just need to create a wrapper around it with a "protocol" so we can
properly call fulfill() or reject() depending on the message we get from
the native backend.

The Internal Extension callback system will handle keep tracking of the mapping
between callback handlers in the native side and pending Promises in the
JavaScript shim automatically.
[SysApps] Tests for the Promise wrapper in the Binding Object

Test if the wrapper works for Promises that are rejected and fulfilled.
Make orientation work again

Direct changes 90 degree but also flips of 180 degrees works. Both
should be tested by QA.
Merge pull request #1301 from kenchris/orientation

[Tizen] Make orientation work again
Merge pull request #1297 from tmpsantos/promise_wrapper

[SysApps] Integrate Promise with BindingObject
Implements runtime flags for Xwalk.

A new class is added to handle the runtime flags where each feature is
declared as "stable" or "experimental".

This class contains the getters XWalkRuntimeFeatures::isMyFeatureEnabled()
used to know if a feature is on or off from the C++ code.

Note that this class also handles whether a feature has been overriden
by the command line (--enable/--disable-myfeature) by querying the
CommandLine object.
Merge pull request #1285 from darktears/runtime-features2

Implements runtime flags for Xwalk.
[Tizen] Fix screen rotates regardless "auto rotate" setting

The screen orientation should be forced to portrait-primary when "auto
rotate" is disabled in settings.

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