Fix two small memory leaks. Found by valgrind.
Const correctness.
Fix all -Wall -W compiler warnings.
Allow linking with multiple device drivers. Apart from the platform specific tun/tap driver, link with the dummy and raw_socket devices, and optionally with support for UML and VDE devices. At runtime, the DeviceType option can be used to select which driver to use.