add local variables list
support macroexpansion of inter-referential definitions
support inter-referential definitions [complete]
deal with exceptions inside macroexpansion
Merge branch 'inter-referential-definitions'