rewrite decls into addresses

This adds a pass to rewrite decls to their addresses.
This lets us avoid linking the resulting object.