Merge fixes based on Alejandro's comments on his work.
Merge remote-tracking branch 'origin/scope-rewrite' into scope-rewrite
Fixed CFunc declarations to have new (option classname) field.
Merge remote-tracking branch 'origin/scope-rewrite' into scope-rewrite
Merged the two versions of