hm, just noticed that for example MenuNode does `return $this->getLabel() ? : '(no label set)';`

should we standardize this to return an empty string too? or should we `return $this->name ?: get_class($this) . ' wih no name';` ?