Simplifies construct_menu_entries
Splits the task of finding files and classifying menu entries into two member functions

This would allow menu_group to accept a list of files.
Finding out list of files from multiple directories would be simpler.
Moves finding of entries in directory to be scanned outside menu_group

desktop_file_search find files inside directory to be scanned.
menu_group now need not deal with file searches
Changes menu_group_test to use the new API