handle framelen beeing 0

Frames with a zero frame length should be discarded. In ZMTP 13, then
length included the flag, move the payload length correction into the
decoding and properly discard length zero frames.
correction
temporary workaround for compatibility with newer ZMTP implementations

In ZMTP 13, the flags field on the identity frame should be ignored.
Until version awarnes is better, special case this in the connecting
state.