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

I imagine people won't like this, but I added a directory for test headers that is just copied straight into the build rather than being pre-processed.

The issue I was running into is that `nvim/buffer.h` is not included when generating the pre-processed headers. We could add all the includes directories to the `gcc` call so that it could parse the `nvim` files. But I don't really see the benefit of it. Copying them directly works just fine for running the tests.