caches: improvements to STUB and future FORWARD modes
Fixes #122, mostly. CNAME chains aren't answered from cache in STUB mode so far, because the current iterator would be unable to follow them. Previously the caches avoided repeated lookups by checking if it has a NS address for the query, which disabled any lookup in forwarding modes. Now it sets the QUERY_NO_CACHE flag instead to stop repeating. Also those more expensive kr_ta_covers_qry checks are deferred, so that they're not done when not needed, e.g. in STUB or +cd mode.
Showing with 56 additions and 37 deletions