Potential optimization: don't copy root bucket steps, instead reference root bucket directly
Everything in root bucket is unary; not having to track and pass around constants could save us some valuable cycles, and would also simplify thing like referencing variable/directive argument values (e.g. the `@stream(label: ..., initialCount: ...)` values) in Grafast internal code.