[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).