Add mount specific options

Adds mount options and allow disabling previews for a mount point

- Extend `FileInfo` with `getMountPoint()`
- Add `getOption($name, $default)` to `MountPoint` for getting mount specific options from the mountpoint
- Read mount options from mount.json

Does not yet add an interface to configure storage options, currently you're required to manually change the mount.json

Note that there are both mount and storage options, storage options are passed to the storage object and define how the storage should connect to it's backend (hostname, username, password, etc).
Mount options on the other hand are not passed to the storage object (since the behavior of a storage backend is not affected by whether previews are enabled or not) and control how *other* systems (like previews) behave for files on the mount point.

To test: 
- mount an external storage and storage some pictures on it.
- Check in the web ui that previews are shown for the pictures
- Add `"mountOptions": {"previews": false}` to the mount config for the storage (resulting mount.json should look something like [this](https://gist.github.com/icewind1991/ab2aa907c6ae81488dd1))
- Check in the web ui that previews are no longer shown for pictures in the storage

Part of #12216

cc @DeepDiver1975 @PVince81 
I get this will help find out whether a Node is from a shared mount point ? Which means we won't need to add `isShared()` or `isMounted()` to the node API ?