Fix various problems with cursor positioning around display properties.
src/xdisp.c (move_it_in_display_line_to): Record prev_method and
prev_pos immediately before the call to set_iterator_to_next.
Fixes cursor motion in bidi-reordered lines with stretch glyphs
and strings displayed in margins. (Bug#8133) (Bug#8867)
Return MOVE_POS_MATCH_OR_ZV only if iterator position is past
TO_CHARPOS.
(pos_visible_p): Support positions in bidi-reordered lines. Save
and restore bidi cache.
(move_it_in_display_line_to): If iterator ended up at
EOL, but we never saw any buffer positions smaller than
to_charpos, return MOVE_POS_MATCH_OR_ZV. Fixes vertical cursor
motion in bidi-reordered lines.