Search fixes and highlighting implemented.

Highlighting does not use fragments (so the entire content of a field
can be displayed).