Combine queries for the same DNS name if close in time.

If two queries arrive a second or so apart, they cannot be a try and
a retry from the same client (retries are at least three seconds apart.)

It's therefore safe not to forward the second query, but answer them
both when the reply arrives for the first.
diff --git a/src/forward.c b/src/forward.c
index ab9df26..5ff4e86 100644
--- a/src/forward.c
+++ b/src/forward.c
@@ -366,6 +366,12 @@
 	  src->log_id = daemon->log_id;
 	  src->iface = dst_iface;
 	  src->fd = udpfd;
+
+	  /* closely spaced identical queries cannot be a try and a retry, so
+	     it's safe to wait for the reply from the first without
+	     forwarding the second. */
+	  if (difftime(now, forward->time) < 2)
+	    return 0;
 	}
     }