code: def search(text, subtext = nil)
        matches  = []
        snippets = []
        @groups.each do |group|
          if group.title.downcase.include?(text.downcase)
            # Search for matches in the snippets if a subtext is given.
            if subtext
              snippets = snippets | search_snippets(group, subtext)
  
              # Reallocate the found snippets.
              group.snippets = snippets
            end
  
            matches << group
          end
        end
        matches
      end
docs: Public: Constructor.
   Public: Search the groups and snippets for a specific text match.
  
   text    - The text for main group titles to search for.
   subtext - The subtext for snippet titles to search for.
  
   Returns Array of Group matches with Snippet matches.