Describes the structure and purpose of a metanode
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.