Create public interfaces for app menu classes

Create public interfaces for AppMenuHandler, AppMenuPropertiesDelegate,
AppMenuCoordinator, and AppMenuButtonHelper. Makes the implementation
classes package protected in preparation for moving app_menu to a
separate build target; except for AppMenuPropertiesDelegateImpl which
will remain the main bulid target.

Also introduces a public AppMenuCoordinatorFactory for use in constructing the
AppMenuCoordinatorImpl without exposing the Impl to the outside world,
and makes AppMenu package protected (updated necessary APIs).

BUG=956260

Change-Id: I4bddf1499c0510aa56873ca726bb58dfef560e3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1623551
Commit-Queue: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662446}
34 files changed