Refactoring: explicit Nullable/NotNull annotations
Refactoring: simplify ReferenceInfo structure, towards ReferenceInfo being responsible for SReference creation
ReferenceInfo_TemplateParent is a special case for a more general ReferenceInfo_Template, however with erroneous assumption about template and output model structure equivalence. Schedule for removal.
reduce_TemplateNode is hence simplified. Besides, no empty line for resolveInfo if not found as it leads to DynamicReference with empty resolveInfo. Reference to template node reused.
Rebuilt generated templates with updated generator templates
Refactor ReferenceInfo to create replacement reference instead of supplying all the data to PostponedReference with awkward api (e.g. doResolve_Tricky, getResolveInfoForNothing)
Refactor: RI_MacroNode is apparently identical to RI_MacroResolver. Get ready to merge the two into RI_Macro
Refactor: Idendical RI_MacroNode and RI_MacroResolver merged into RI_Macro
Refactor: code cleanup