fix some cyclic references in Selectors/ to avoid some pretty brutal memory leaks

The reference count for instances of game selectors was never hitting zero,
preventing the selector instances from being disposed.
add platforms/programs requested by Kumaki

"Any chance to add support for Vice (Commodore 64) and Coleco? Also PCSXreARMed would be nice. And GnGeo!! And MSX!! Also FBA...Atari 2600 (Stella)...and Intellivision (jzintv) if I'm not asking for too much, lol"
fix bug preventing platform folders from being added to the top level
Spawning: stop bothering to create a symlink for rom files with spaces, etc

This used to be necessary when the rom filename was passed directly to pnd_run.sh,
but for a while now emu apps are pre-mounted and their commands run directly,
making it possible to just quote the rom filename arg instead.

The symlinks caused problems when the emu expected to read other files from the
same path as the rom.
updated platform and program definition, for various issues
GuiInstaller: show a message and offer gui switch if Pandafe is not found
fix manual merge fail
refactor rom/folder data handling to minimize memory use

GameItem/GameFolder object instances were previously kept in memory for the life of the program, once instantiated.
refactor All Games view(s) to minimize memory use and disk access

Previously:
* An instance of EverythingSelector was kept fully in memory once accessed,
  for the life of the program, even when switching to other views.
* On first hit the EverythingSelector read caches for every folder,
  for every platform. This might result in a large number of reads,
  which can be noticably slow on a slow sd card.

Now:
* EverythingSelector instances are freed when switch to another view
* An additional cache file is maintained containing all game info.
  This single file is read when switching to All Games view(s).
fix some cyclic references in Layers and Menus to avoid leaks
optimize GamesListCache/ for speed

Switched game caches from Yaml object persistence to a simpler custom format.

My Yaml stack proved just too slow on the Pandora to read large game lists,
even after adding more agressive performance tuning.

Tests with ~4,000 games cache:
* Yaml: 2.5s
* custom: 0.02s
fix regression in view switching

Game context was sometimes lost when switching views.