pithos: Backend refactoring

Remove 'pithos.backends.base' module:
* Move backend method docstrings to ModularBackend class.
* Define backend exceptions in a separate module.
pithos: Provide descriptions for backend errors

Closes #1
pithos: Handle backend errors centrally

Since commit 122527366668825f4c9e63de9f3a2236d94006f9
the backend provides meaningful descriptions for backend exceptions.
This facilitates the frontend to handle centrally such exceptions.
pithos: Cleanup 'pithos.api.util'

Improve code's readability
pithos: PEP8 fixes
pithos: Keep compatibility with snf-image

'snf-image' passes None to the following backend arguments:
db_module, db_connection, block_module
according to the old pithos backend API.
Revert the changes introduced in commit
53d2a7ba6b5d5a3cf898a5d93f891a008eb811df
only for these specific arguments
in order to restore the compatibility.