[REFACTOR] removed duplicated code

XMPPSessionDisplay and MDNSSessionDisplay now inherit from an abstract
base class that contains most of the logic that should be done during a
session. Also moved some inner classes to own class files.

Change-Id: Ia04a0b65a3c2b3eb0568ee93bf74005bd9570090
Reviewed-on: http://saros-build.imp.fu-berlin.de/gerrit/1590
Tested-by: Jenkins CI
Reviewed-by: Stefan Rossbach <srossbach@arcor.de>