We're now using the same structure of go/goals, go/util_rules.
We'll definitely have go/goals/check.py
I'm wondering if most the compilation code should live in check.py and all the other files import that? Or we have something like util_rules/compile.py which check.py imports?