Added Menu.popupPosition() method.

This is intended for when a menu item wishes to know the exact position of the cursor when the menu was popped up, rather than where the cursor was after the menu was moved fully onscreen and the user moved the cursor to choose the item.
Improved positioning of nodes created by the NodeMenu.

They are now placed where the cursor was when the menu was opened, rather than at the top left corner of the menu itself.
Improved support for functools.partial() callables in Menu commands.

We now introspect them to see if they contain "menu" or "checkBox" arguments, and pass those arguments appropriately where necessary.
Positioning inserted dots at the cursor.
Added bindings for DotNodeGadget.

Without this, a DotNodeGadget is returned to python as a RefCounted instance rather than a Gadget, preventing the right click node menu from working in the NodeGraph.