[ios] Adds Browser and supporting infrastructure.

Browser is a new core iOS class that is intended to map to a single
browser "window".  It wraps a TabModel (WebStateList) and
ios::ChromeBrowserState and will be passed around to coordinators and
other objects that need access to the ChromeBrowserState and
WebStateList.

BUG=None

Change-Id: Ic44c389fd856b46fbb996461bcdc537bec321cd2
Reviewed-on: https://chromium-review.googlesource.com/c/1323654
Reviewed-by: Mark Cogan <marq@chromium.org>
Commit-Queue: Rohit Rao <rohitrao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623208}
13 files changed