Add info about user agent overrides to WebContents

* NavigationEntries store booleans indicating whether they should be using
  an overridden user agent instead of the regular one.
* WebContents stores a user agent override string that will (in a later CL)
  be sent to the renderer whenever the user agent needs to be overridden
  for a navigation entry.
* Adds the requisite framework for saving and restoring this data from disk.

Part of upstreaming b/5119921, tracked in b/6272286
BUG=112923


Review URL: https://chromiumcodereview.appspot.com/10170016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@136683 0039d316-1c4b-4281-b951-d872f2087c98
18 files changed