Added cleaner refactoring of metaprogramming functionality, with placeholders for generic MP functionality
Refactored codebase for DDataAnnotation type (with splice vars) for separate metaprogramming pass to build generators. Further refactoring needed to again remove splice vars from DDataAnnotation while preserving MP pass in the parser.
More refactoring, to enforce data annotations as unstaged (i.e., spliced) AST nodes, with an explicit staging layer (in s.L.K3.Parser.Metaprogram). The staging layer consists of data annotation macros, and control annotations. We preserve control annotations the AST for lineage only (this can be removed at any time as desired), where downstream compiler stages do not need to operate on control annotations.