Fix handling of feature entries with ORIGIN_LIST_VALUE type

Currently, the values for features with ORIGIN_LIST_VALUE type are read and set
directly from the command line.

This only works if the user clicks the "Restart" button on the chrome://flags
page and only on desktop, as desktop codepath can pass modified command line
arguments to the restarted browser instance. It doesn't work if the user
manually closes the browser, or at all on Android.

This CL persists ORIGIN_LIST_VALUE flags in a separate pref instead, so that
they can be read on browser start. This works on Android, or when the user
manually restarts the browser on desktop.

This CL also merges values entered in chrome://flags and values passed directly
via command line so that modifications to chrome://flags don't lose the command
line values.

Finally, it fixes the test flakes by modifying the command line switches only
on browser starts.

Bug: 972121, 937736
Change-Id: I7468cb1037e7a5050130302c5c796ea163ccb6bc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1698989
Reviewed-by: Mustafa Emre Acer <meacer@chromium.org>
Reviewed-by: Alexei Svitkine <asvitkine@chromium.org>
Commit-Queue: Mustafa Emre Acer <meacer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#680501}
9 files changed