Implement filesystem services, and the required kernel objects.

Now that I understand what the point of these comments is, I don't think there's any point to it - if anything you can leave the link in there and merge the comments into the struct fields, e.g. `char short_name[8]; // 8.3 file name (8 characters, 'longfilename' -> 'LONGFI~1'`.