replace ScopeCloser with lambda
add serialVersionUID where needed
move validation code to Expression.MethodInvoke
validation works off listener

Nodes aren't responsible for validating their children anymore.
validate ctor invocation arg types
Merge branch 'validation-fixes'