Implement running and capturing gather output
Formatting
Get code gen finally working
Rework how we handle Before functions