Construct the `environment_data_stack` outside of the parse

This is a safer operation, in the event of an early return from
`env_replacements`