SMB/CIFS mount using OwnCloud logon credentials

Selecting 'SMB/CIFS Auto' in the mounts configuration allows an SMB/CIFS
mount to be configured that uses the credentials of the user logging in to
authenticate to the server.

Optionally, the username can be used as the share name, permitting home shares
to be dynamically mounted.
Use loginname instead of display name

getDisplayName would return the display name of the user, not great if it is a
canonical string. The uid passed back from 'login' is the UUID of the user, so
also not suitable. The login name from the session is the username the user
used to log in to ownCloud in the first place, which is what is needed.
Revoke sharable permission on automatic SMB shares

Shares authenticated with user credentials (aka not hard coded) cannot be
accessed by other users, breaking sharing. This change completely revokes
sharing for such shares
Rename SMB_Auto to SMB_OC and change visible name

SMB_Auto is now SMB_OC, and the name has been changed from
"SMB / CIFS Auto" to "SMB / CIFS using OC login"
Perform proper checking for share availability

To check for shares, the code attempts to connect anonymously to the share.
In most cases this will fail with NT_STATUS_ACCESS_DENIED, so the regex array
used for parsing the output of smbclient in smb4php has been overridden to
treat such output as success.

The 'test' method for storage classes can now take a single parameter,
$isPersonal, which allows the storage to adjust the tests performed based on
if they are being configured as personal shares or as system shares.
Fix error in $isPersonal setting
Use braces on single line if statements
Merge pull request #7875 from Xenopathic/files_external_smb_auto

SMB/CIFS mounts using ownCloud login, fixes #7843