BNFNode :: release - Release bnf node hierarchy
Since BNF nodes do not support reference counts, but share data when calling copy nodes, data has to be released explicitly by calling this function for the top node. The function does nothing for child nodes.
Implementation details
BNFNode  :: release (  )
The function releases the BNFNode resources and leaves an empty BNFNode.