do not replace ufcs_invocation on resolve_lambda_captures()
replace captured symbols with proper ufcs_invocation on instantiation

it is done on instantiation because Dachs identifies ufcs_invocation by
its address.  If replacing captured symbols on definition of lambda, the
lambda may be generic and then the replaced ufcs_invocation's address
will change on the instantiation because of copying AST.