[LayoutNG] Add NGLogicalRect

This patch adds NGLogicalRect to compute visual rect in logical
coordinates.

In doing this, minor adjustments are done to NGLogicalOffset:
1. Add operator+/- for NGLogicalSize.
2. Whether "offset - offset" should produce "size" or "offset" was
   controversial. Added two functions to clarify, "RelativeTo" and
   "DistanceTo", and keep the "operator-" unchanged as the alias to
   "offset" version.

Bug: 591099
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Ib3e5450cdf040dcffc50b6e3f69cc00d52338780
Reviewed-on: https://chromium-review.googlesource.com/701817
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@opera.com>
Cr-Commit-Position: refs/heads/master@{#507157}
7 files changed