Build fix

This introduces a NO_SYSTEMD cmake argument I have used to test a build with systemd disabled, it's quite similar to NO_PAM.
The second commit just fixes the passwd backend build for builds without pam (this backend is not build at all with pam support).

However I seriously doubt that sddm can work without pam now, due to the sddm user session.