Use signals for delivering input events

This patch changes both the Input::Session interface and the skeleton
for the server-side implementation of this interface
('input/component.h').

The Input::Session interface offers a new 'sigh' function, which can be
called be the client to register a signal handler. The signal handler
gets notified on the arrival of new input. This alleviates the need to
poll for input events at the client side.

The server-side skeleton for implementing input services underwent a
redesign to make it more modular and robust. I.e., there are no
global functions needed at the server side and the event-queue
enable/disable mechanism is implemented at a central place (in the root
component) rather than inside each driver.

Fixes #46
dde_linux: implement memory barriers in USB driver

This patch implements the memory barrier macros in the USB driver for ARMv7
and x86.

Fixes #1159.
ram_blk: change blocksize output to decimal

Reading 200 instead of 512 is confusing.

Fixes #1142.
ram_blk: remove superfluous block_number check

block_number is Block::sector_t (uint64_t), which never can by less
than 0.

Fixes #1142.
Qt5: use the Genode main thread

Now that it is possible to resize the stack of the Genode main thread, it
is not necessary anymore to create a new Genode thread as Qt main thread.

Fixes #1134.
Qt5: constrain the window buffer refresh area

With this patch, the information about the changed window area is taken
into account when refreshing the Nitpicker buffer.

Fixes #1132.
linux: fix lx_rmap test to not stuck

The test did not fail actually. It just behaved strangely and got stuck
in the good case, which is fixed now.

Fixes #1121.
dde_rump: rump_iso compare output on 64bit systems

Fixes #1141.
dde_rump: fix int casting warnings

Fixes #1141.
dde_rump: implement rumpuser_dprintf()

Though we do not actually need this function, it is helpful while
debugging.

Fixes #1141.
nic_drv: read MAC and tap device from config

E.g.:
<nic mac="12:23:34:45:56:67" tap="tap1"/>

Fixes #1165.
hw: log "Test succeeded" in nested_init.run
base: extra section for binaries of boot modules

This enables us to map the binaries of the boot modules on demand at least in
base-hw.

ref #1139
hw: map binaries of boot modules on demand

fix #1139
hw: align kernel stack appropriately

fix #1161
hw & rpi: provide Pic::MAX_INTERRUPT_ID

fix #1160
base & exynos5: platform driver in affinity test

Ensures that the Exynos5 CPU is clocked equally no matter how the kernel
initialized it. This makes the result of this time critical test more
comparable.

fix #1162
Qt5: don't create Nitpicker views for desktop widgets

Fixes #1163.
Qt5: handle dialog windows as top-level windows

Fixes #1164.
gpio_drv: prevent copy of non-copyable objects

Follow up fix for commit 0b7ea4abab
Ref #1093