(so i think this is in an okay state now, but to get the kind of speed warren wanted, I had to go back to scrolling three lines per small swipe. this means it's hard to scroll to a precise line. Above I discussed adding a non-linear curve, and I even considered something kookier like using the drawn vector to set up momentum, but I think those ideas are likely to have compat concerns with apps that use the scroll events in a less than standard way.
What I think I might do at some point (got to put this down for a while) is look for changes in direction mid-swipe. If one is found, the slow down the speed to scroll line by line instead of 3 lines at a time. I think users will naturally try this without even thinking, so it may be a good easy solution.
(but won't know if it feels right in practice until I try it. it shouldn't be more than 3-5 lines of code, but will experiment later when i have time)