EmulatorView: don't crash when link ends on the last column in a line

When linkifying, endRow/endCol currently represent the screen position
immediately after the last character in the link; this fits naturally
with Java subsequence APIs (where the end index is always one after the
last position in the subsequence), but results in endRow being too large
if the link in question ends on the last column of a line.  Instead,
have endRow/endCol point to the last character of the link, avoiding
this problem (and fixing an off-by-one error in the FullUnicodeLine
case, where we were already calculating endRow/endCol this way).

Fixes #341.
Merge pull request #342 from steven676/for-upstream

EmulatorView: don't crash when link ends on the last column in a line