net: Link Layer Ping

The former ping module was quite useless, but I think the general idea of having a link layer ping module might be helpful for many purposes, not least, for collecting testbed topology information.

I tried to split the PR up in many tiny pieces, following the one-change-per-commit rule, but I'm not sure if this is too much.
Thinking about it again: from a conceptional point of view defining `msg_q` as non-local static makes most sense to me and has the advantage that one can read the actual size of it without scrolling.