Node labels don't currently make use of the 'align' property, so this reuses
the existing property.
The label code has a number of alignment options that make sense to edges only,
so the Edge/Node now passes a boolean to the Label ctor to explain which the label
is being rendered for