replace the NodeList hacky container with a QHash<QUuid, QSharedPointer(Node)>