Clean up external application handling
This MR creates a new class which is instantiated in QML, wrapping KService such that an application's name and icon can be used. This is used by a new QML type, ApplicationIcon which unifies the large icons used in the Discover and Settings pages.