new class: vtkNewickTreeWriter

This class allows us to output vtkTrees in Newick format.

This commit also contains a bug fix for vtkNewickTreeReader.
Before this commit, vtkNewickTreeReader created an extra node at
the root of the tree.  This resulted in the height of the tree and
the number of vertices in the tree both being off by one.

Change-Id: Icd04b2ea868719289be210b34a3f772335b85a27
only create an edge weight array when necessary

Change vtkNewickTreeReader so that it no longer creates an edge
weight array if the input file does not contain edge weight information.
This makes it easier for vtkNewickTreeWriter to detect whether or not
edge weights should be written to the output file.

This commit also contains corresponding changes to vtkDendrogramItem.
This class no longer assumes that the input tree has an edge weight
array.  As of this commit, vtkDendrogramItem also allows users to
specify the names of the vertex weight & vertex name arrays within
their input tree.  Previously, these array names were hardcoded to
"node weight" and "node name", respectively.

Change-Id: Icdfe6c641c2257686f647865b42f4f4160c6d179
Merge topic 'newick_tree_writer' into master

2202e55f only create an edge weight array when necessary
d651290c new class: vtkNewickTreeWriter