FILE
There are some headers in libc that require us to have definitions, such as `FILE` available to us (such as in `pwd.h`). It is bad practice to include the entirety of `stdio.h`, so it makes more sense to put `FILE` into it's own header.