Make Document::caretRangeFromPoint() to work with :first-letter style

This patch makes Document::caretRangeFromPoint() to work with :first-letter style by changing HitTestResult class to know whether specified point is in a renderer for :first-letter or not. Because of text nodes having :first-letter style are associated to two renderer, one for first letter and another is rest of text, this patch changes nodeFromPoint() to rendererFromPoint() and makes Document::caretRangeFromPoint() to use it.

This patch is a part of fixing issue 174349. Another patch will make selection to work with :first-letter style.

BUG=n/a
TEST=LayoutTests/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-with-first-letter-style.html
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/25668008

git-svn-id: svn://svn.chromium.org/blink/trunk@159012 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Improve Node's exception error messages.

BUG=270033

Review URL: https://codereview.chromium.org/25052002

git-svn-id: svn://svn.chromium.org/blink/trunk@159013 bbb929c8-8fbe-4397-9dbb-9b2b20218538