Make FrameCaret to utilize SynchronousMutationObserver

This patch makes |FrameCaret| to utilize |SynchronousMutationObserver| to
simplify DOM mutation by removing call from |FrameSelection| for improving code
health and a preparation of [1].

[1] http://crrev.com/2637013002: WIP Make FrameSelection to hold non-
canonicalized positions

BUG=682878
TEST=n/a; no behavior changes

Review-Url: https://codereview.chromium.org/2643033005
Cr-Commit-Position: refs/heads/master@{#445019}
3 files changed