Shells should use only short AppIds (i.e. appId without the version string). In order to support this, needed to - slightly decouple appId from the desktop file path, now need to ask the ApplicationController implementation for the path to the desktop file - DesktopFileReader now just a dumb file reader - in the upstart ApplicationController interface & implementation, convert any long appIds to short appIds - in ApplicationManager, to ease transition, have startApplication support both long & short appIds. But otherwise it uses short appIds only. Fixes: 1239750