libports: use libc's rpc framework

Certain rpc headers are needed for compiling getaddrinfo.c. Unfortunatly
that means we have to generate _a few_ header files which we do when we
prepare the libc.

These header files need to be created before the symlinks. Also, some of
these header files depend on a patch. Therefore we apply the patches
first, generate the header files and in the end we create the symlinks.
Noux: add recvfrom()

Add SYSTEMCALL_RECVFROM to noux/net and the corresponding libc function.
Fix check_unblock() and implement proper write()

check_unblock() did not use the arguments at all, which results in
wrong behaviour in certain situatutions.

Socket_io_channel's write() method did not implement the right
interface and was next to useless. Luckily, you normally do not use
write(1) on a socket.
Fix Plugin::send() fd

The fd has to be set before each syscall.
Noux: add F_GETFL handling to terminal_io_channel

There are certain programms which check if an fd is open by calling
fcntl(fd, F_GETFL, ...). So to keep them happy we return true if
such an request was done to our terminal fd's.
Noux: fix missing mode propagation

When opening a new file, a new Fs_vfs_handle is created but with the
initial mode set to 0 which is not expected by functions like fdopen()
that check if the original flags given to the open() call match the
returned ones on the used fd.
noux-pkg: rename gnu-netcat to netcat
Noux: fix usage of renamed noux-pkg/netcat

The noux_net_netcat test run-script still refered to netcat by using
the old name gnu-netcat.
Noux: add FIONBIO handling support to libc_noux
Noux: add cleanup_socket_descriptor()

This function removes all currently used socket descriptors from the
socket descriptor registry. It is only called when a child is exiting.
Noux: use counter for gettimeofday()

There certain issues which currently prevent us from writing proper
implementations for time related functions. For now we provide a simple
counter instead to make programms like ping(1) happy.
Noux/net: add reset_all() method to sd registry

This method is called when a child is exiting to remove all remaining
sockets from the socket descriptor registry to close all sockets.
Noux: add timeout handling to select()

Previously there was not actual timeout handling. If a select() call
set an timeout it would be set to zero instead and was always handled
as blocking i/o. While this works fine for file descriptors which will
be triggerd externally (for example vim through terminal i/o) it does
not work at all for socket descriptors and network operations in
general.

So this commit introduces proper timeout handling and changes the
behaviour of SYSCALL_SELECT so that it now returns more than just one
descriptor at a time.

noux/minimal and noux/net now depend on thread and alarm libraries.
Noux: add is_nonblocking() method

Certain programs tend to set their sockets non-blocking.
As previously descriptors in Noux were only blocking we now introduce
a method to mark the used Io_channel as non-blocking.
Noux: several changes to Socket_io_channel

These changes include the handling of the FIONBIO ioctl() request
an also fixes a bug regarding the io_check_unblock() method.
Noux/net: add explicit clear_unblock() call...

... and disable a few debug messages.
Noux: sendto() set args before each syscall

Set addrlen and dest_addr explicitly before each system call.