Support logging direct to journald, if enabled.

Instead of merely intercepting logging output from stdout/stderr from the
journal side of started processes, this has the advantage of meaning that the
origin process name will be correct.

fprintf won't work, because if a process starts children (like e.g. a
homescreen does), then their stdout/stderr are merged into their parent, and
journal has no way of differentiating the origin.

We are also able to store information about the context of logging, which might
be useful in post-mortem cases.

[ChangeLog][Platform Specific Changes][Linux] Systems with systemd may now pass
-journald to configure to send logging output to journald. Logging will still be
sent to stderr for interactive applications (run from a tty) or with
QT_NO_JOURNALD_LOG set to a non-empty value.

Change-Id: Ib260cec1ea87390bf44f267d217d795583407d00
Support discovery of key evdev devices.

Change-Id: Iac2751b51fb0af9fba181c26ad788f25eb0b02f7
Done-with: Andrew den Exter <andrew.den.exter@jollamobile.com>
EvdevTouch: Don't remove released touch data for Type B; only ignore slot

The Type B protocol states that touch slots with an ID of -1 should be
considered unused, but data should be retained if that slot becomes
active again later. Instead of removing the contact from the contact list,
only "disable" it. This contact can later be reused if the slot becomes
active again.

Change-Id: I827ae311841dd97f73a2c64d943658cd3f29eaf8
Done-with: Andrew Knight <andrew.knight@digia.com>
evdevtouch: Don't try to keep reading on EAGAIN

This stops touching the screen (and not moving) consuming 80-90% CPU.
The mtdev and non-mtdev codepaths have been separated for additional clarity.

Change-Id: I0559a6bd80dab961fdb4a83ad50860a9aec6445c