yield and return of function now simply returns the function rather than trying to evaluate it.
Fixed complete builder accordingly.