Change method by which a window recomputes its starting point. Old
method did too much work, particularly in cases where the line was
very long. New method searches backward -- exactly once -- to start
of first line that will appear in the window, and saves all of the
resulting information in the window for later use.
Unfortunately, there are many other problems with the algorithms that
make them dependent on line length, and it's a lot of work to fix
them. To fix it write will involve rewriting the display update code,
yet again, and I'm not in the mood for that right now. However, it
won't be necessary to rewrite the starting-point computation when that
does finally happen.