[WIP/RFC] Add unit tests for buffer.c and fileio.c

It seems that taking the address of a statically sized array has different semantics:

```c
(lldb) expr (void)printf("%p %p\n", NameBuff, &NameBuff);
0x100291710 0x100291710
```

So `*&` would not be idempotent, which is why it crashes. This is also why your approach works.