Cleanup filesystem setup code

- Move the logic of setting up the filesystem from "all over the place" to `\OC\Files\Factory`
- Seperate out logic of setting up the filesystem for object storage based systems (cc @butonic)
- Remove filesystem state from `\OC\Files\Filesystem`
- Let the server container keep track of the state instead

cc @DeepDiver1975 @PVince81 @th3fallen 
"Returns a folder with the point of view of the given user, with all mount points applied"