Changed tree nodes and parser to use pointer to long name string literal
and create short name when needed instead of continuous storage