Keyword not found recommendations

For issue #888.
In revision 03029ff6dfcf360e24445a2b07f399508c6b8540 you asked help getting full names without using the somewhat complicated logic in `_get_full_names_for_keyword`. It didn't occur to me earlier that it is a bit complicated problem. I'd try something like this (untested, may have typos etc.):

```python
def find_recommendations(self, name):
    all_names = self._get_all_handler_names()
    if '.' in name:
        return self._find_recommendations_using_full_name(name, all_names)
    return self._find_recommendations_using_short_name(name, all_names)
    
def _find_recommendations_using_full_name(self, used_name, all_names):
    candidates = ['%s.%s' % (owner, name) if owner else name
                  for owner, name in all_names]
    return self._get_close_matches(used_name, candidates)

def _find_recommendations_using_short_name(self, used_name, all_names):
    candidates = {}
    for owner, name in all_names:
        full_name = '%s.%s' % (owner, name)  if owner else name
        candidates.setdefault(name, []).append(full_name)
    matches = []
    for match in self._get_close_matches(used_name, candidates):
        matches.exptend(candidates[match])
    return matches