Notify user when a search request is pending in the background.

If a request takes a long time then there was no indication that
something was still going on in the background or that the currently
displayed results do not match the contents of the search box.
small update to README and local.yaml
Change the source URLs to be like MXR's. Addresses bug 834509.

Also rename fetch_results() to results() for consistency with direct_result().
Make search URLs like /tree/search?q= rather than /search?tree=x&q=y. Closes bug 834509.

Invalid trees now return 404, because that makes sense now that we're putting the tree name in the URL path.
Tweak README edits
Merge Schalk's readme edits that smooth the new-user experience.
Change the search and source-code URLs to match MXR's. Closes bug 834509.
Add a skipped failing test for the result-repetition bug.
Fix bug 850453, the repeated-results thing.

It was faster (and yielded more readable code) to rewrite the highlighting stuff than to fix what was there.
Restore compatibility with Python 2.6
str.decode() only gained support for kwargs in Python 2.7
Fix some search URL constructions I missed in 1914a6d52228dd0cfab8e0ff575a5af16d1a08d9. Address bug 834509.

There still needs to be a SPOT for this.
Pose some troubling questions as comments.
Switch to new-style classes everywhere.

Tests still seem to pass.
Fix the "Jump to definition" and "Jump to file" context menu items.
They need to have "/source/" in them now after the URL scheme change.
Merge pull request #119 from abbeyj/context-menu-source-relative-paths

Fix the "Jump to definition" and "Jump to file" context menu items.
Move some of the style in query.py one notch toward non-horribleness.
Rename _instance_path to _config_dir_path, because that's what it points to.

A DXR "instance" is the "target" folder.
Call a kwarg like it's a kwarg.
Make fully qualified member names trigger direct results. Fix bug 766122.

For some unknown reason, the % was at the front rather than at the back, where it's needed to eat the () or (params) which we jam into the qualname field along with the function name. (Type-signature overloading and all that jazz)

Also add a test for the other qualified-name direct-result case: types.
Stop using suffix matching for direct-result qualified-type queries.

This ought to make them much faster, as they'll be able to use the index (assuming the collation is case insensitive, which I'm not sure about). They're covered by the test I added in the previous commit. I've jazzed it up to check case-insensitivity, which may or may not be desired. For now, I'm playing it safe.