From navigation perspective, there's hardly difference between plain SNodeReference and NodeWithContext hint. Latter supplies Project, which is otherwise available when navigation happens. Don't expose initial context, clients shall use GenerationSessionContext if they need one, but keep one for private use (although there's no real use of the context in the methods we supply it into).