DragInteraction callbacks for dragstart, drag, and dragend

Working towards #365, and realized I needed this.

This takes care of #630 too.
git diff is showing this as a tab I believe.  If this is a tab, I think single-space is preferred for consistency