pothos-util: EvalEnvironment shared ptr and error cache