code: def _search(self, searchstring):
          
          if searchstring is None:
              return {}
          ret = {}
          for b in self.backends:
              tmp = self.backends[b].search(searchstring)
              for u in tmp:
                  if u not in ret:
                      ret[u] = {}
                  self._merge_user_attrs(tmp[u], ret[u], b)
          return ret
docs: search users
          @str searchstring: search string
          @rtype: dict, {<user>: {<attr>: <value>}}