Fetch the required results only when when needed
Fetches result for specific subject, test case and optionally scenario
only when needed by a rule in policy.
Only single result (`limit=1` instead of `limit=1000` in GET requests)
is fetched at a time since it's very probable that it'll be the one
needed. Next result needs to be fetched only if the result ID matches
one in `ignore_result`.
Since cache keys are now more specific (additionally test case name and
scenario are used), fewer cache entries are invalidated when new result
is added to ResultsDB.