Editing of large geometries

This PR was worked on with @ahocevar and provides an alternative way to edit large geometries by editing only one segment at a time, using the segment closest to the mouse cursor. It's provided as a separate mixin, and depends on the rbush library by @mourner