recursive check for dragging and a bit of moving away from using the node hierarchy to attach things