cyclades: Fix KeyError exception

Calling the 'pop' method of a dictionary requires a defauft value to be
returned if the key is not found, otherwise 'KeyError' exception is
raised. This commit provides a default value to all 'pop' calls.

Closes #19
snf-common: Add callback for publisher confirms

Provide callback function to handle the publisher confirmation messages.
cyclades: Add timeout to AMQP methods

Extend 'close', 'reconnect' and 'cancel' methods of the 'AMQPPukaClient'
to support an optional timeout property and make 'snf-dispatcher' daemon
use this timeout option. Also, when reconnecting to an AMQP broker,
ignore unhandled exceptions while closing the old connection. Finally,
make logging a litle more verbose.
cyclades: Check GanetiApiError exception code

Fix bug when quering Ganeti to check if a VM, NIC or Network is stale.
The code wrongly regarded every Ganeti API error as the resource to be
missing from Ganeti (404 code). This commit fixes this issue by
explicitly checking the exception code.
astakos: Fix authenticate call with trailing slash

Authenticate Identity API call with trailing slash
used to fail with 405 (Method not allowed).
Update docs

Remove trailing slash from the authenticate API call URI
for conformity with the others.
pithos: Fix missing 'Content-Disposition' in response

Since version 0.15 a specific content disposition type can be enforced in
requests for an object's content, using the 'disposition-type' optional
parameter.

Erroneously, if "disposition-type" is not provided, 'Content-Disposition'
header is not returned in the response.
pithos: Handle spaces in 'Content-Disposition'

Handle properly objects whose name contains spaces
pithos: Add tests for the 'Content-Disposition'