Addressing TODOs.
- The hdr iterator will now stop if it reaches the packet's end.
- Translate packet's overall structure is now more consistent with core's.
- Assert functions are macros no more; they evaluated some parameters more
than once, which was prone to bugs. Units no longer panic too quickly as a
side effect.
- Improved an added tests. Found (not fixed) errors in the outgoing module.