Add Packed attribute on Header structures

Structures that are used to cast packet data into fields need to be packed
so that the compiler doesn't add any padding to these fields. For structures that don't need any padding, the attribute will not affect the structure layout, but it also used by the compiler as a hint that the structures might be cast to unaligned data and on architectures without hardware supported unaligned loads, it is faster to add code to handle possible unaligned loads, rather than trap to a software fix up routine.

Replaces PR 1072 (remastered)

Passes PR script