|        |   | 
- DiscoverClasses(start_dir, top_level_dir, base_class, pattern='*', index_by_class_name=False)
 - Discover all classes in |start_dir| which subclass |base_class|.
 
  
Args: 
  start_dir: The directory to recursively search. 
  top_level_dir: The top level of the package, for importing. 
  base_class: The base class to search for. 
  pattern: Unix shell-style pattern for filtering the filenames to import. 
  index_by_class_name: If True, use class name converted to 
      lowercase_with_underscores instead of module name in return dict keys. 
  
Returns: 
  dict of {module_name: class} or {underscored_class_name: class}  
 - DiscoverModules(start_dir, top_level_dir, pattern='*')
 - Discover all modules in |start_dir| which match |pattern|.
 
  
Args: 
  start_dir: The directory to recursively search. 
  top_level_dir: The top level of the package, for importing. 
  pattern: Unix shell-style pattern for filtering the filenames to import. 
  
Returns: 
  list of modules.  
 |