make libavoid play nice with latest versions of MSVC++ compiler
External objects (shape, connector, pin, router) hold a reference to
Javascript (Node.js) object. The JS object is then invalidated upon
corresponding C++ object's destruction.
invalidate refs in deleteShape() and deleteConnector(); do not wait for transaction to end