new refactor, just wrap the functiom IValueReference instead of the this
value
Made that a bit lazy because the FUNCTION_SCOPE doesn't have to be there
for the first time