DragInteraction callbacks for dragstart, drag, and dragend

Working towards #365, and realized I needed this.

This takes care of #630 too.
I'm happy to know that y'all care about coding style. If there's anything more let me know.