Store ip and port information in special struct

Keeping all function parameters free from types with a size makes it easier to
extend it later to other network layer protocols. This could for example allow
IPv6 support.
Avoid mixing of UDP and TCP flows with same ip addr and port combinations
Re-implement data/network/transport layer parser

The old parser was hard to extend because it was just implemented inside the
main pcap loop and mixed pkt2flow state checks with the actual packet format
checks. It also lagged some validity checks.

The new implementation should prepare pkt2flow for the next steps in IPv6
support.
Add IPv6 TCP/UDP flow support