LabeledXLink now an abstract class (no longer trait with val)