seoul: split vancouver run script into smaller ones

Issue #806
seoul: implement heap_free

Avoids the message

cxx: operator delete (void *) called - not implemented. A working implementation is available in the 'stdcxx' library

during a " new ..." which causes exceptions. Happens for seoul in disk.cc

Issue #806
seoul: catch exception during block session creation

Leads to invalid utcb state and later on to invalid vCPU state.

Issue #806
seoul: use utcb guard

Forgetting to restore the old utcb content results in hard to debug bugs.
Save only the amount of word items which are actually on the UTCB.

Issue #806
seoul: fix console output in vga text mode

Issue #806
seoul: fix disc boot

Additionally use the block session interface asynchronously to let the VM
continue execution.

Fixes #806
Round up RM session size to page granularity

Since RM sessions can be used as dataspaces and dataspace sizes are
supposed to have page granularity, RM session sizes should have page
granularity, too.

Fixes #799.
base: deny region creation exceeding size of a ds

The rm_session implementation expects that offset + size must be
part of one dataspace. Unfortunately the parameters are not checked
properly during an rm::attach.

During an detach memory behind the actual region can be unmapped by such
bogus region entries.

Issues #591
noux: calculate rm::attach parameters correctly

Previous commit denies the creation of regions larger then the dataspace.
Noux does it by setting the default size to the dataspace size without
subtracting the offset.

Fixes #591
run: restrict noux-auto to platforms known to work

* add to autopilot list

Issue #591
Print pthread stub messages to Genode log console

With this patch, the 'not implemented' messages of the pthread function
stubs always get printed to the Genode log console instead of stdout.

Issue #815.
bash: don't call 'check_dev_tty()'

The 'check_dev_tty()' function calls 'ttyname()', which calls the pthread
stub function 'pthread_main_np()', which prints a 'not implemented'
message. Calling 'check_dev_tty()' doesn't seem to be necessary, so this
patch removes the call.

Issue #815.
foc: SVN revision r56

Genode side of the update.

Issue #819
l4linux: Update to L4Linux l4box 3.9.0-l4-svn37

This is the Genode side of the L4Linux update to r37. I also moved L4Linux
sources to GitHub.

Issue #819
noux: Keep track of how dataspaces are used

This patch eliminates the "no attachment at..." warnings, which
were caused by a use-after-free problem of dataspaces. When a
dataspace was destroyed, the users of the dataspace were not
informed and therefore could not revert possible attachments to
RM sessions. The fix introduces a callback mechanism that allows
dataspace users (i.e., RM regions) to register for the event that
a dataspace vanishes.

The following types of dataspaces are handled:
* RAM dataspaces
* ROM dataspaces
* The process binary
* The binary of the dynamic linker
* Args dataspace
* Sysio dataspace
* Env dataspace
* managed RM dataspaces

The handling of ROM dataspaces is still not complete. When forking,
the ROM dataspace of the parent process gets just reused without
creating proper meta data ('Dataspace_info') for the forked process.
Similar issues might arise from other special dataspaces (e.g.,
args, env, sysio).

This patch removes all "no attachment at..." warnings except for
one (an attachment at 0).

Issue #485
usb_drv: Fix USB storage for x86 on hardware

Also fix 'usb_storage.run' for x86

Fixes #822
Noux: add noux-pkg/sed
Noux: add noux-pkg/grep
ports: add grep and sed to noux_tool_chain

Fixes #821
nova: determine number of CPUs

Issue #813