FIX: Bug when kernel grid parameters have the same name with globally declared grid variables.

GridGet and GridEmit expressions used grid variable references that are built without an explicit scope parameter. Since ROSE seems to assume the global scope, the name resolution results in the function local grid references to point to the global variables. This does not manifest as a bug by itself since their names still match with the function parameters, but when inlined to the kernel call site, the inlined function body has local variables that are supposed to replace function parameters, which will fail because of the scope of the variables pointing to the global one, not the function scope. The bug is fixed by explicitly specifying the correct scope when building grid references in GridGet and GridEmit.
NEW: testing register blocking with user-defined types