'Drag the ui object to other point or ui object.
Usage:
d(text="Clock").drag.to(x=100, y=100)  # drag to point (x,y)
d(text="Clock").drag.to(text="Remove") # drag to another object'

@property
def drag(self):

    def to(obj, *args, **kwargs):
        if ((len(args) >= 2) or ('x' in kwargs) or ('y' in kwargs)):
            drag_to = (lambda x, y, steps=100: self.jsonrpc.dragTo(self.selector, x, y, steps))
        else:
            drag_to = (lambda steps=100, **kwargs: self.jsonrpc.dragTo(self.selector, Selector(**kwargs), steps))
        return drag_to(*args, **kwargs)
    return type('Drag', (object,), {'to': to})()
