* prevented on best effort basis inconsistent states
* extracted the registry setting as an own strategy (by methods)
* refactored the overriden methods to call the strategies (registry or folder) depending on the different variables
* removed Powershell specific ToggleException
* added documentation
Changed visibility of methods
Removed Logger from AbstractVolume
Moved mountPoint and #getMountPoint()
Renamed fuseMnt to mount in FuseVol (as in DokanyVol)
Removed unnecessary mountPoint-field from WebDavVolume
Refactored UnlockWorkflow, CustomMountPointChooser, DokanyVolume and UnlockInvalidMountPointController
Changed UnlockWorkflow#handleGenericError() to accept Throwables
Added check for parent to CustomMountPointChooser (when using FUSE on Win)
Removed legacy constant from DokanyVolume
Added asserts to UnlockInvalidMountPointController and UnlockWorkflow
Implemented MPC-System in FuseVolume and DokanyVolume
Removed methods from FuseVol and DokanyVol
Renamed methods
Added chooser logic instead
Added imports for VolumeException to multiple classes
Added support for throwing and handling of InvalidMountPointException from Volume up to UnlockWorkflow (changed method signatures, added try-catchs, etc.)
Fixed possible racecondition at Vault initialization: VaulSettings were read before the Vault was fully initialized resulting in breakage of the code if the excact order was to be changed.
Added AvailableDriveLetterChooser for automatic DriveLetter-choice
Added CustomDriveLetterChooser for a chosen DriveLetter
Added CustomMountPointChooser for a chosen directory
Added TemporaryMountPointChooser for automatic directory-choice
* fix bug where the default name is not replaced by the actual folder name
* introduce new field in settings "mountName" as binding on displayName
* change volumes to use mountName instead of displayName
Fixed bug introduced by 32a810fe1d:
The Set of existing DriveLetters was in random order because Collectors#toUnmodifiableSet is an unordered collector.
Changed #getAvailableDriveLetter() to use Stream#findFirst() instead of #findAny()