search: more consistently report timeout errors instead of "No results" when `timeout:` directive is present
Created by: ijt
This is progress on #3294 .
This also includes a helpful hint for a longer timeout directive in the error message.
Test plan: Manually tested with queries like func timeout:1ms
on a sourcegraph instance with a single repo
The commits shown on github are screwed up and include things from a previous PR. Sorry about that.