Rewrite GetPackages method without using filesByFolder dictionary

This is a preparation for the next commit which removes  filesByFolder,
which stores pc file infos (which are primarily stored in infos) redundantly.
Remove redundant pc file info store filesByFolder

and associated logic.
Remove obsolete pc infos from pc cache on Update

The pc info file cache (~/.config/xbuild/pkgconfig-cache-2.xml) stored data
for files which don't exist anymore on the system which causes
https://bugzilla.xamarin.com/show_bug.cgi?id=11133.

This patch removes obsolete entries from the cache when
PcFileCache.Update() is called.