I would suggest to add a new attribute in the ValueDragTool that will dictate if the manipulated value is reverted when the drag operation is canceled. This is so that we can keep backward compatibility. 

for example  `revert_on_cancel` = Bool(False)
The default value will be false so that by default the tool will behave as before and if the user wants to use the revert functionality can instantiate the tool with `revert_on_cancel=True`.