Node graph auto scroll

This is achieved by moving the ViewportGadget camera during idle events when the mouse is dragged near the edge of the viewport. Also added a middle mouse drag mode for nodules, which doesn't create connections within the graph and is instead intended for dragging plugs into other editors - this doesn't trigger the autoscroll.