Add FileSystem and WalkFS

Closes #1