Write recent config file list on profile load. Flag device strings for multi-controller adapters.

The list of recent config files is now saved when a new
profile is loaded or when a profile is removed.
This way, an updated profile lists will still be available
after unplugging a controller. Also, when the program saves the
recent config list upon exiting, only the first controller seen
from a multi-controller adapter will be used to save the
recent profile list.