Fix kernel support for 2.6.23+

Kernel support was broken since Linux 2.6.23+

This patch fixes it. This code is already used in OpenWRT, Fedora, DD-WRT and Wive-NG projects.
- Added code required by new l2tp-ppp API:
   * UDP socket fd per tunnel
   * Tunnel pppox fd (connect_pppol2tp() function)
   * Multi-socket processing in main network loop
- Added graceful pppd shutdown (since we put kernel tunnel descriptor to pppd).
- Removed if_pppol2tp.h from old pre-merge pppol2tp driver, which is incompatible with newer kernels