Fix crash in test_imported_function

libgccjit commit 2060b8dbbbeb7fe51a1d05bf8aec3ab6cc7f8eb9
tightened up the distinction between pointers and arrays.

The correct way to use an array as a pointer in the JIT API is to use
  gcc_jit_lvalue_get_address
on the array, which gives you an rvalue representing the address of the
initial element, and then to cast that rvalue as necessary.

The above commit changes the test case from an internal compiler error
to a type-checking error:
  libgccjit.so: error: gcc_jit_context_new_cast: cannot cast buffer from type: char[1024] to type: char *

This commit implements LValue.get_address, and fixes the testcase to use
get_address on the array before casting it, enabling compilation, and
removing the enabling of the various debug options.

It also converts "buffer" from a global to a local - "new_global" may be
a misnomer, as it currently assumes an import of a global from pre-existing
code (via the dynamic linker), rather than creating an actual new global.