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

Now the comment on line 147 above `mch_early_init()` is also no longer relevant. Can you trim it? 

Vim avoided allocating these buffers until now, in order to avoid OOM on startup--at least that's what I can gather. But I don't think that matters on modern systems, because statically-allocated arrays are not assigned real memory until they are accessed. For example:

```c
#include <stdio.h>                        
static int foo[1024*1024*100];            
int main(int argc, char *argv[]) {        
  char *p;                                
  for(int i = 0; i < 1024*1024*100; i++) {
    foo[i] = i; //touch the array to page it in
  }                                       
  scanf("%s", p);                         
  return 0;                               
}           
```

In the above program, `htop` shows 400MB of real memory consumed:

```
VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND  
404M  400M   324 S  0.0 10.1  0:00.40 ./a.out
```

But if `foo[i] = i;` is commented out, then resident memory is just 368 bytes:

```
VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND  
404M  368  288 S  0.0  0.0  0:00.30 ./a.out
```