[Editing] Change left/right caret movement from visual to logical

As the visual left/right caret movement has become un-maintainable,
this patch removes them and replaces them by logical movement.

This patch:
- Exposes line direction utilities from inline_box_traversal.cc to be
  reused by SelectionModifier. These utilities will be moved/refactored
  later for better code structure.
- Changes SelectionModifier to use logical left/right movements for
  character and word granularities.

All other changes are removal of dead code and test expectations
changes.

Bug: 958831
Change-Id: Ic4cf83290beb2521c620167be32b4fa4d716a3c0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1593632
Commit-Queue: Xiaocheng Hu <xiaochengh@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#657694}
386 files changed