Fix message about wrong search pattern regexp

Exact error description was overwritten by more general one, always
repeat the exact one when available.

Also make code more readable and less indented.
Extract reset_search_results()

Resets information about last search match.
Reset search results on toggling 'hlsearch'

To apply new option value on the next search query (/, ?, n, N).
Better count handling for normal mode searching
Include re in search error that says it's wrong
Store pattern even for incorrect regexps

This way we can provide better error messages.
Slightly better find_pattern() code
Take regexp error into account in find_npattern()
Avoid displaying useless search messages

Those that user can't see, but that are shown in :messages.
Fix menu search error message

After successful search followed by search with wrong pattern n/N
didn't show *any* message, now shows error message.
Free regexp after its use in print_search_fail_msg
Make menu search regexp errors like filelist msgs

Make them consistent.
Merge branch 'fix-search-msgs'

Enhancements and fixes for various search messages in both fileview and
menus.