My main motivation is that it is easier to type Maps than Objects-as-maps, but using Objects as maps can have some odd behavior if you aren't careful, so I think it is probably a better idea to use anyways for this data that might be coming from a compromised child process. This slightly alters the behavior of autofillFields because it modifies the existing map in place rather than creating a new one from scratch, but I think that is preferable because nothing seems to have an external reference so there's no need to preserve the old map. Differential Revision: https://phabricator.services.mozilla.com/D219361