mobileshell: Refactor and extract state to separate plugins
This avoids mixing plasmashell state with our MobileShell component library (which really shouldn't have state at all).
This avoids mixing plasmashell state with our MobileShell component library (which really shouldn't have state at all).