Trace data class for enchanced Solum logging

* Adds easy structured logging capability
* Uses thread local storage to hold trace data needed in future logging
* Hooks into Oslo Log's context adapter to look via to_dict()
* Utilizes Oslo Config to format the trace logging output
* Includes ability to delete old trace data automatically
* Will accept a RequestContext as input

Partially implements blueprint logging
https://blueprints.launchpad.net/solum/+spec/logging

Change-Id: I9522c5eb1e2c56b1d48e444025d47d45bf0e264d