So each Q has it's own instance of ERBEvaluator? (Who is statically dependent on actual Ruby context)

I suggest we start drawing boxes and arrows to nail this architecture down if you are not the only one who will be working on that.