Virtual Filesystem to support:
- detecting devices and initializing and mounting the filesystem for that device
- creating a layer of abstraction so that maps specific filepaths to a location on a specific filesystem
- creating abstraction of everything as a file