Change the way of geometries transferring

Retrieve and send node geometry separately.
Also send normals of triangles, counts and colors in addition to vertices
Is there a reason why we need ```NodeMap```? I was thinking the following query gets you the node:

```cs
var allNodes = dynamoViewModel.Model.CurrentWorkspace.Nodes;
var nodeQuery = allNodes.Where(n => n.GUID == guid).Select(n => n);
```

If there's no special reason why we need ```NodeMap```, I'd like to see it removed.