Fixes #3689, fm.sync removes unavailable volumes.
A potential solution that fixes #3689
When a request is made to the server with the open command and tree=1, the server must reply with a list of all volumes. If the server's response does not include a volume ElFinder already knows about, that volume should be treated as not available anymore and get removed from the file explorer UI.
~~Hmm, that only seems to work in the root directory. When using the refresh command in a subfolder, elFinder makes sends an tree command where it also merges the root volumes.~~ see below
49b27aaa8660343e2746e44876341981b78b8c1b is an amendment to the previous commit. When invoking the refresh action on a non-root folder, ElFinder also makes a "tree" request to the server and adds all root volumes it currently knows about. Since other parts of the code might rely upon this behavior (such as tree.js), remove non-existent volumes from the response to the tree command in the fm.sync method.