net: Initial import of a global packet buffer

Cleaner alternative to #1129. Queue in #1640 

This is basically a static malloc + sugar
I don't understand the meaning of `for the current thread`. Isn't the slot just generally marked as being processed?