displaymanager: Detect SDDM session type

This set of commits refactors the desktop environment detection in the displaymanager module so it is no longer copied&pasted for every display manager, adds KDE Plasma (5 and 4) and GNOME to the list of detectable desktop environments, fixes the SDDM autologin setup to not clobber the RememberLastUser= line, and fixes the SDDM autologin setup to set Session= if not already set (using the refactored desktop environment detection).

This should be applied on top of pull request #139. Together, they make autologin setup for SDDM work for me.