improve partialEval

It's a mess right now. Can be improved. Must recurse into subexpressions first.

Edited by Ghost User