allow streamdns read to resume after timeout
when reading on a streamdns socket failed due to timeout, but the dispatch was still waiting for other responses, it would resume reading by calling isc_nm_read() again. this caused an assertion because the socket was already reading.
we now check that either the socket is reading, or that it was already reading on the same handle.
Closes #4064 (closed)