Metanodes
A metanode is a description of a data structure instantiated by nodes in the tree. It can be considered as the "type" or "class" of a node.
It has a name, which uniquely identifies its type. The name may also contain a numerical suffix, which is its version number. (see Metanode Versioning)
It also defines a list of properties that comprise the structure of data stored by each instance of this metanode. Each property of a metanode, and even the metanode itself can contain additional semantics to further describe its purpose.
When a metanode is registered it can be also be given flags to affect the behaviour of its instances, for example, the METANODE_NO_SAVE
flag to prevent instances of this metanode from being written to a file during a save operation.