[wip] Changes going nuts

As demonstrated in #79, SideView.reposition() wasn't taking the current scroll position into account, which was doing bizarre things to SideView placement whenever a reposition() was triggered.

- [x] Handle the current scrolling offset when repositioning SideViews.
- [ ] Stale decoration classes are being left on lines corresponding to a resolved conflict.