[ios] Refactor tab printing

This CL does the following:

1) Removes printing code from BVC because it is not necessary there.
This is accomplished by directly connecting the PrintTabHelper to the
PrintController, which presents the system print dialog. Previously,
it was going through the BVC as an intermediary.

2) PrintTabHelper creation is moved to AttachTabHelpers() where it belongs.
This splits setting the printer delegate from the tab helper creation. This
is the preferred structure.

This CL moves the print code in the right direction. In the future,
PrintController should be renamed and refactored as a coordinator.

Bug: 910017
Change-Id: Ifd21f9959d2926c9b8f661f71f22eb0b73f96dd4
Reviewed-on: https://chromium-review.googlesource.com/c/1419538
Commit-Queue: edchin <edchin@chromium.org>
Auto-Submit: edchin <edchin@chromium.org>
Reviewed-by: edchin <edchin@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Reviewed-by: Mark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624476}
9 files changed