API overhaul for file system