Add socket filter support for packet capture

This feature branch adds socket filter support to only capture a certain portion of the traffic matching arbitrary criteria.
Such socket filter program can be created with the help of `tcpdump`
```
# tcpdump icmp -dd
{ 0x28, 0, 0, 0x0000000c },
{ 0x15, 0, 3, 0x00000800 },
{ 0x30, 0, 0, 0x00000017 },
{ 0x15, 0, 1, 0x00000001 },
{ 0x6, 0, 0, 0x0000ffff },
{ 0x6, 0, 0, 0x00000000 },
```
Such program can be written to a file and given to `dabba capture start --sock-filter <path>`.
`dabba capture get` tells if a socket filter program is present and which instructions it contains.