Added more docs and split FileSystem and IO