Remove implicit conversion from Position to VisiblePosition.

Since VisiblePosition defines a non-explicit constructor which takes a Position
accompanied with an optional argument, an implicit conversion from Position to
VisiblePosition is defined based on this constructor.

It turned out that there are so many existing codes which rely on the conversion
(mostly inadvertently, I think), which is unfortunate as two different concepts
(Position and VisiblePosition) look interchangeable.

This change makes the constructor explicit and fixes all places that use the
conversion. Most of the fixes on the call sites are mechanical rewrites that
just add the call of the VisiblePosition constructor explicitly.

AXRenderObject, FrameSelection::modify(), and SpellChecker are treated
differently because using visibleXXX() functions from VisibleSelection seems
more appropriate than just appending the constructor call.

Just refactoring, no behavioral change expected.

BUG=none

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

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