Fix share manager to save data after driver error

While creating share servers and shares, exceptions can be raised.
At the moment when error occurs some information about
server/share can already exist. This information should be returned
to the manager and stored in database. The best way to send this
information is using exception which is thrown.
Add field detail_data to these exceptions.
Also make manager to save data from new field to the database
when drivers throw exceptions.

Change-Id: I41397c881d0efd28a02c358b64229b5dc60785b3
Partially-implemented: blueprint enhance-share-manager
Merge "Fix share manager to save data after driver error"