Linked Request IDs

As discussed at the Icehouse Summit, provide a means to
link request IDs across service calls. The linkages
should be marked via logging and notifications.

Implements: blueprint cross-service-request-id
Change-Id: Id085c4444fee2bb68b80738bfe77ccb0ba1908ec
Add error type to unhandled exception log message

Whenever an unhandled exception is thrown, only the exception value is printed
as part of the log message. Printing just the value is sometimes not very
helpful to identify the problem. eg., in case of KeyError, only the 'key_name'
would be printed as part of the log message.
This commit includes the exception type along with value while logging an
unhandled exception.

Change-Id: Ibf00173a07510b2ec0c81a29624004f17810a4e4
Closes-Bug: #1265561
Add common methods to cliutils

Find_resource, service_type, get_service_type, pretty_choice_list,
import_class, import_versioned_module and exit methods used in several
openstack clients, so to prevent code duplication we need port it to
common code.

* Method find_resource used in ceilometerclient, cinderclient, glanceclient,
ironicclient, keystoneclient, novaclient, troveclient and tuskarclient;
* Methods service_type and get_service_type used in cinderclient, novaclient
and troveclient;
* Method pretty_choice_list used in ceilometerclient, cinderclient,
glanceclient, ironicclient, keystoneclient and novaclient;
* Method import_class used in cinderclient, neutronclient and novaclient;
* Method import_versioned_module used in ceilometerclient, glanceclient,
heatclient, ironicclient, marconiclient and tuskarclient;
* Method exit used in ceilometerclient, glanceclient, heatclient,
ironicclient and tuskarclient.

Related to blueprint common-client-library-2

Change-Id: Id9b2f432a73c5cbb9a8a1b26fec3b3a9e6fff94f
Merge "Add common methods to cliutils"
Merge "Add error type to unhandled exception log message"
Merge "Linked Request IDs"