VMware: raise more specific exceptions

In certain cases the exception handling for backend errors
would be handled too broadly. This patch elevates the backend exception
to the application so that it can treat specific errors.

In the application we can now handle the following specific exceptions:
- FileAlreadyExists - for example when moving a directory to a directory
that already exists
- InvalidProperty - for example when using neutron and opaque networks
are not supported
- AlreadyExists - for example a port group already exists
- NotAuthenticated - for example the operation is denied as because a
session is not established
- CannotDeleteFile - the file cannot be deleted
- FileFault - a file access exception
- FileLocked - an attempt is made to lock a file that is
already in use
- FileNotFound - the specific file does not exist

Change-Id: I789165f3879ec5df73f72c2737377e0fcfc99656