`get_names_of_scope` could yield multiple items, for example when `isinstance(scope, er.Instance)`, right?  I can do `itertools.takewhile(lambda s: s is scope, get_names_of_scope(scope))` but I think `include_parent` is cleaner.  But I have no strong preference so please choose.