dmmcontrol: enhance serial port error handling

We've noticed an issue when requesting 100 samples from
DMM_send_values. These are received but the next command is
incomplete. Should be ":STAT:QUES:EVEN?\n" but is "EN?\n" or
"S:EVEN?\n". There is no handling for incomplete messages which
time out. These are treated as if they would be empty. This is why
DMM_send_values removes the first part of the command.

So concatenate incomplete timed out messages in a second try and
fail completely in case this second try also times out.

Check for errors after each QextSerialPort read/write operation
with "lastError()" and use "errorString()" to show the error.