code: def _search_capability(self, base):
          
          if _debug: Collector._debug("_search_capability %r", base)
  
          rslt = []
          for cls in base.__bases__:
              if issubclass(cls, Collector):
                  map( rslt.append, self._search_capability(cls))
              elif issubclass(cls, Capability):
                  rslt.append(cls)
          if _debug: Collector._debug("    - rslt: %r", rslt)
  
          return rslt
docs: Given a class, return a list of all of the derived classes that
          are themselves derived from Capability.