Methods Details:
look whether the current scope already contains
a declaration with the given name
append declaration to the current scope
push new scope on the stack
restore the previous scope
Returns the same or new proxy type
Resolves any duplicates in the list of declarations from this
file
(self, metamodule, module)
Append the module comments into the metamodule.
Adds a declaration to the current (top) scope.
If there is already a Forward declaration, then this replaces it
unless this is also a Forward.
preserve builtins unconditionally