Proposed change to AST node constructors

Maybe it would make sense to have a dedicated metadata attribute on all nodes that can be anything, but still emit a warning if anything else is used. That would guarantee that there are no future conflicts.