Extract elaboration of consts and functions into endo pass
Summary:
We currently perform namespace elaboration all over the place - such as in naming and in codegen. If we are able to extract the namespace elaboration into one pass, we can remove having separate logic in naming and codegen and have it all in one place.
This diff moves the naming of consts and functions into the endo pass.
let locals are not a supported feature yet - so edge cases may not yet be caught - just got enough working such that tests pass.
Reviewed By: kmeht
Differential Revision:
D17815572
fbshipit-source-id:
aec7c6802f2ec6769eb961cf1b3f9fc25bef9098