Save-upload functionality

On save we get from Dynamo all workspaces that were loaded - home workspace (ws) and all custom nodes' workspaces.

We can load file of home ws (*.dyn) or custom node ws (*.dyf). 

New concept here is proxy node. It's a custom node that hasn't its own definition (corresponding ws). If we load a ws with a custom node instance before we load custom node definition this node will be marked as proxy. Then after loading the custom node' ws this node will stop being proxy.
generate `{id, guid}` pairs