block: use new server framework in block drivers

As a side effect, the entrypoints in the USB driver are merged into one thread.

Fixes #1027
run: instruct 'exec' to ignore stderr output

Unless '-ignorestderr' is set on 'exec' in expect, any output on stderr
is interpreted as execution failure. In this case, 'create_iso' logs
some diagnostics but does not fail.

We repeatedly promote our ISOs to be bootable from USB storage.
Therefore, we have a hard dependency on 'isohybrid' and should fail in
the case that the tool is missing.
Arora: fix the demo launchpad configuration

This patch adapts the launchpad configuration of the Nitpicker plugin demo
to the current launchpad config syntax.

Fixes #1018.
Fix memory leak in Gallium EGL driver

With this patch, the reference count of the textures created in
'Surface::_validate()' gets decreased in the '~Surface()' destructor.

Fixes #1012.
Arora: add gallium.lib.so boot module

QtGui depends on gallium now, so gallium.lib.so needs to be available as
boot module.

Fixes #992.
terminal_echo.run: Adjust timer quota
Length and capacity accessors for Genode::String
tool/fix_include_ifndef: consider license header
Move nitpicker_gfx/geometry.h to util/geometry.h

This patch makes nitpicker's geometry utilities available for the use
by other programs. Thereby, the 'Point', 'Area', and 'Rect' classes
have become templates that take the coordinate type and distance type
as arguments.
Add demo/include/util/dither_matrix.h

This patch moves a repeatedly used dithering matrix from the scout
source code to a public header to share it across programs.
Remove nitpicker_gfx/miscmath.h
Move nitpicker_gfx/color.h to util/color.h
Remove nitpicker_gfx/nitpicker_types.h
Generalization of nitpicker's graphics backend

This patch re-arranges nitpicker's graphics backend in a more modular
and expandable way. Generalized versions of the 'Canvas',
'Chunky_canvas', and 'Pixel_*' classes have been moved to
'os/include/util/' and 'os/include/os'. The only remaining parts that
are specific to nitpicker's needs are a few drawing functions, each
located in a distinct header at 'os/include/nitpicker_gfx/'.
Clean up scout widgets

This patch integrate the scout widgets with Genode's new API headers
'util/geometry.h', 'os/surface.h' and 'os/texture.h'. Thereby, we get
almost rid of the platform-abstraction shim that was never used anyway.

Furthermore, it extracts the parts that are worth reusing from the
scout implementation to the public location 'demo/include/scout'.
New utility for managing volatile class members

Fixes #1025
XML generator and test

Fixes #1019
Add Attached_rom_dataspace::update

This patch enhances the 'Attached_rom_dataspace' utility to support
dynamic updates of ROM modules.
New 'os/attached_dataspace.h' utility

The new Attached_dataspace complements the existing Attached_*
utilities with a simple version that can be used with any kind of
dataspaces. It may be even useful as a common base type for the other
variants. For example, this patch simplifies Attached_rom_dataspace
and removes the Terminal::Client::Io_buffer.
util/string.h: String::operator ==