Refactor Autofill for out of process iframes (OOPIF).

- AutofillAgent is a RenderFrameObserver instead of a RenderViewObserver
- legacy RenderViewObserver code is temporarily split off into LegacyAutofillAgent

- ContentAutofillDriver is one per render frame host, instead of one per WebContents
- ContentAutofillDriverFactory is one per WebContents and spawns ContentAutofillDrivers for each frame

- ContentAutofillClient remains one per WebContents. Thus there are many drivers to each client. The PasswordManager is now owned by the client so it remains one per WebContents.

Similar changes are made to the parallel password manager classes.

Blink side is here: https://codereview.chromium.org/707723002/
- WebAutofillClient is a property of WebLocalFrame instead of WebView

BUG=425756, 400186

Review URL: https://codereview.chromium.org/707173004

Cr-Commit-Position: refs/heads/master@{#306479}
93 files changed