Integrate guides full text search.

Initial version of the UI - the search results are combined with
API search and shown in the same old dropdown.  This means there
isn't quite enough room to show the full context of full text search
matches and the search is also slower, but it fits nicely to the
current UI.  Plus it was easy to implement.

The most questionable part is how the guide results are placed inside
API search results.  I'm drawing some arbitrary lines between the
scores given by guides search to split the results into boxes like
the API search does.
Add --search-url and --search-domain options.

Only activate the external guides-search when --search-url option
is used.  Otherwise fall back to old search.
Let server side handle search results HTML escaping.

Mike fixed the server side escaping, so we don't need this hack any more.
Merge branch 'guides-search'
Use full classnames as tab titles.

Previously it depended on whether you viewed classes by package or
by inheritance.
Move #shortName and #packageName to ClassRegistry.

We're going to use #shortName also inside Tabs class and want to
share the code. #packageName is a related function and should be
together with #shortName.
Add tooltips to tabs to show the full name.

For classes we now always show the short name in tab title and full
name in tooltip.

For guides/videos/examples the title and tooltip are the same, with
tooltip providing a way to see the title when it's too long to fit
on the tab.

Fixes: #369
Extract Guide TOC creation to a class.
Allow linking to named anchors inside guides.

Created GuideAchors class which transforms the hashes in links
and ID-s in anchors so they don't interfere with Docs app #!-navigation.

Relaxed the pattern matching of guide URL-s in Docs app and added
support for navigating to <a name="..."> anchors.
Create human-readable TOC links.

Instead of numeric myguide-section-3 we now get derive heading ID-s
from heading text.  For example: myguide-section-getting-started

Also added testsuite for GuideToc.
Avoid coloring <a name="..."> anchors.

Fix CSS to only target actual links.
Fix splitting of --search-domain option value.

Used the wrong method and didn't test :(
Sync Guide search with latest changes in backend.

- Drop body text shortening (fragsize param takes care of that).
- Instead of shortening URL, prepend the #!.
- Add params to query.
- Collapse continuous whitespace.
Limit the number of guides search requests made.

Avoid searching at all when search term hasn't changed.

Do a basic search after small delay and then improve the results
of it with a guides search after a bit longer delay.
Replace magic numbers with constants for delays.
Move delayed search functionality to GuideSearch class.
Make search results paging work again.

But this time instead of re-running the search every time we
need to navigate to a new page, just remember the search results
and only render the page.
Skip URL fixing in GuideSearch.

The URL gets now returned by the search server in correct format.
Improve --comments-domain and --search-domain docs.
Up version to 4.10.0