Improve receiveMessages() error and interrupt handling

CLDCONNECT-1242: This message source is now implemented asynchronously, which is why the `pollPeriod` parameter has been removed. Note that this **breaks backwards compatibility** if `pollPeriod` was being used.

Also, we were using `!Thread.interrupted()` to know when to stop processing; this method resets the interrupt flag for the current thread, so it's useless in this case.