fixed up dragging, doesnt work with constrain, code needs cleanups