Ad. eval: Yeah, there are some logic in parameters serialization that has to be rewritten carefully. I keep this in my todo list.

I'm sick lately, so won't work on it too soon, but can I assume that fixing this $function control is enough to let us merge this PR, or we want to do this together with eval changes and remove from this PR?