> Not sure I follow the first part - you want to change the symbol table in order to do what?

The "lazy references" you have added to AST are something technical needed to solve this task. As such I do not think it should change the API Blueprint AST (as you did here). Instead this can be handled in the parser's internal symbol table.

> Like I said "I'd have gone a different way - just creating references, i.e. mapping the semantics of markdown." And if you're ok with with a public change, then I'd go down this path.

While the alternative is probably to most correct way to go it does not get us any further at this moment. Since this should be a fairly small task that does not result into changing the AST I would stick with the "shortcut" solution.

By a shortcut solution I mean the approach where there is no change in AST and the lazy references are resolved internally (in the parser's instance). 

We can (and will!) revisit this later with the planned work on (external) referencing.