parser: handle unenveloped messages

If receiving a message without a delimiter in enveloped parsing mode,
interpret that as a message without an envelope instead of as a message
without content.

This allows the parser to consume messages on a connection where it is
not known if messages will be enveloped or not.

It could be argued that the parser should not attempt to deal with
envelope/content semantics at all and instead simply produce a single
list of frames, but that's a larger breaking change that will have to
be done later, if desired.