Support calc-effect on arbitrary results.

To allow this, params are now injected into results (rather than relying on the client to do that).