Set XDG_CURRENT_DESKTOP for the started session

See https://git.reviewboard.kde.org/r/117400 for details
Merge pull request #139 from MartinBriza/desktopsession

Set XDG_CURRENT_DESKTOP for the started session
Fix UserModel.cpp to use getpwent()

Per open bug report #123

Also fix some problems with passwd struct argument
per comments from @aavci1
Merge pull request #141 from Teknocrat/getpwd-support

Fix UserModel.cpp to use getpwent()
Search for user specific config path and merge with the default config

Better guard against null values in user config
If the user set background cannot be loaded fall back to the default one
Fix build deps
fix crash on double pam handle free

fixes sddm/sddm#145
Merge pull request #146 from MartinBriza/pamcrash

fix crash on double pam handle free
Merge pull request #144 from davidedmundson/debian_build_deps

Fix build deps
Merge pull request #143 from davidedmundson/custom_background

Restore custom background support from sddm-kcm
Fix xauth annoying error
Merge pull request #147 from Teknocrat/xauth-fix

Fixes xauth warning about authority file not existing.
Add missing semicolon.
Don't set GDMSESSION as it is not used anymore.

Fixes #138.
improve .travis.yml

it's little bit messy, but it works
infrastructure is ready for clang, but for now build always fail
Merge pull request #149 from iXit/master

Fixes autobuilds using travis.
Added travis build status.
WIP!!! WIP!!!

Wayland port

This change adds Wayland support only to Qt 5 builds (it's not possible
with Qt 4).

Users pass -DUSE_WAYLAND=ON to cmake in order to enable Wayland support.
Wayland and X11 support are mutually exclusive.

Changes to daemon:

 - DisplayServer is now a base class
 - DisplayServer implementation code moved to XcbDisplayServer
 - New WaylandDisplayServer class with Wayland specific code

Changes to greeter:

 - KeyboardBackend moved to its separate .cpp/.h files
 - Same happend to XcbKeyboardBackend
 - New WaylandKeyboardBackend class with Wayland specific code
 - Added WaylandIntegration class to use wl_fullscreen_shell

Wayland backends are used only if USE_WAYLAND is defined.

The sddm.conf configuration file has different values if Wayland support
is enabled for:

 - ServerPath
 - SessionsDir