Fixes for "underlying C/C++ object has been deleted"

These errors were occurring in two situations :

- When right clicking a numeric plug, NumericPlugValueWidget was erroneously starting a bogus drag. This wasn't ending until much later, when the widget itself had died.
- When right clicking a numeric plug, ExpressionUI and RandomUI were creating circular references which kept the NumericPlugValueWidget alive after its parent UI was destroyed.