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

As far as I can tell (which may be wrong), the reason this works is because the headers can be parsed by the lua ffi stuff, which can access the constants I've created, but does not know how to access `#define`s. I will be happy to switch it to some other method provided that method works. 

I would also be willing to throw this whole section out and just make the constants in `buffer.h` into `enum`s as I think that would make everything happy and working.