ftpfs: added support for rename.

To make that work, I had to introduce the rename operation
for filesystems, which in turn meant to introduce the rename
syscall. The problem is that on UNIX filesystems, the operations
link+unlink are sufficient to implement rename. But the FTP
protocol doesn't support a link operation, but only rename, i.e.
the higher level operation, build with link+unlink. Since it
seems to be impossible to guess from consecutive calls of link+
unlink that it's actually a rename in an reasonable way, I chose
to add the higher-level operation.
tcpip: use std::shared_ptr for links.
tcpip: Made Route thread-safe.
tcpip: made the LinkMng thread-safe.
net-links: added missing include.
Added missing SConscript call in drivers.

Ups, vesa wasn't rebuilt for quite some time...
Removed superfluous extern "C".
Added missing signal-name.
Added a testperf module for the heap.
Added easier support for shm in Socket and made use it in ftpfs.
lspci: improved layout and added PCI capabilities.
pci: added logging.
Added MSI support to semcrtirq.

Unfortunately, this is at least platform specific, but I think
that is the cleanest way to support it.
For this, we also needed to make sure that the log2Phys array
in SMP does always exist, even if SMP is disabled.
pci: added MSI support.
Better initialize the IOAPIC entries.
dhcp: added missing space.
e1000: generalized the driver to support all intel NICs.

At least, it should support them. Tested are only 82540EM
and I218-LM.