if you hit a roadblock, i would just make a stub for your filesystem (for instance, a flat mapping of (full) filename -> contents). creating a filesystem that works isn't hard, making it fast is the tricky part.
if you already have a stub in place (or want something fast before having something that "works"), i suggest you look into how other filesystems store data on disk and use a seperate file to simulate the persistent storage - look up stuff such as "inode".
what you're doing now is creating your own filesystem. it's going to take a lot of work and you won't be creating something "new" if you just use a nested directory structure like other filesystems do. creating all this in python liberates you from a lot of real-world concerns.. why not try something we've never seen before? (eg something wacky like making your entire filesystem one big JSON tree (lists, numbers, strings), or having an sql(ite) backend)