adding a bind shell that can allow for more practice with future
features such as multiple transports, encryption, transferring files,
and a more robust client interface
if the bind shell example is compiled with the right feature and is run
inside a(n) (im)properly configured Docker container, it is now able to
break out and run some commands on the host
for some reason, under this breakout mode, it runs a little weird with
networking commands, but does fine with file system or IPC based commands
AggregateInterface can be used to gather multiple libpcap interfaces
together in order to listen to all simultaneously and also selectively
send on different interfaces
this just involved a better understanding of the data
types provided by libnl and some refactoring to make querying
as a user of the libnl library easier