IMAPX: Buffer a full response line before parsing.

CamelIMAPXInputStream (and CamelIMAPXStream in older releases) was
trying to immediately parse whatever data it got from a read() call.

The problem is sometimes an IMAP response line can be split across
multiple Ethernet packets.

This confuses the parser into thinking it's reached the end of input,
and triggers an error and subsequent disconnect from the IMAP server.

We had a case of this recently from a user with a large number of
mailboxes -- enough that one of the LIST responses got split across
multiple Ethernet packets.

This commit attempts to passively buffer incoming data from the IMAP
socket until a full response line is detected, and only then is the
buffered response line parsed.

Note that response line detection is pretty primitive, and literals
containing CRLF sequences can trick it.  Therefore I'm leaving the
imapx_input_stream_fill() logic in place during tokenization until
we can replace our ad-hoc lexer with something more sophisticated
like Flex.