create packet header struct and move stuff there; bench tested, serialbridge untested