Make the CrostiniRegistryService::Registration a view on prefs

Instead of pulling out all the fields from prefs when we want to get a
Crostini app registration into separate data types, we just store a
base::Value from prefs and extract values as needed (for safety we clone
the value in prefs instead of keeping a pointer, as it may be changed
upon updates). This makes it a bit tidier and easier to add new fields.

We also remove the LocaleString (= map<string, string>) type which was
used to represent strings different values for different locales and
only allow users to get the value for the current locale.

Change-Id: Ib91f41d65c009e1ef706b61f4e1546f863f3a077
Reviewed-on: https://chromium-review.googlesource.com/1071269
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Reviewed-by: Nicholas Verne <nverne@chromium.org>
Commit-Queue: Timothy Loh <timloh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562680}
8 files changed