DO NOT MERGE: Issue 2106: Live Preview Snapshot

This is a PR for issue #2106.
Yes, there's a slight bit of state with how `WPAuthenticatedSessionWebViewManager` works. This means it needs to exist for the lifetime of the user's browsing session (take a look at how -[WPAuthenticatedSessionWebViewManager forceLogin]` is used).