fs: Filesystem module

This PR creates a common interface for all filesystems to use.

STILL WIP
Maybe an all-on-one solution?
```c
size_t is_prefix_len(const char *restrict prefix, const char *restrict str)
{
    size_t len = 0;
    while (1) {
        if (!*prefix) {
            return len;
        }
        else if (*prefix != *str) {
            return 0;
        }
        else {
            ++prefix;
            ++str;
            ++len;
        }
    }
}
```