Give a way to save why a service has been disabled.

Implements blueprint record-reason-for-disabling-service

We added a field to the service table to log a reason when a service has
been disabled.
We added a new API extension called os-extended-services. The new extension
will extend the os-services extension adding:
- A method for disabling a service and specify a reason for that.

PUT /v2/{tenant_id}/os-services/disable-log-reason

When the os-extended-extension is loaded the call:

GET /V2/{tenant_id}/os-services
will return the list of services with reason information it that exists.

DocImpact
Change-Id: I87a4affc45160796ff11c7b03e591e6aba73d62a
xenapi: implement get_console_output for XCP/XenServer

If an administrator has enabled the logging of guest
consoles on XCP/XenServer, this enables nova to return
the last MB of those logs to the user.

The management of the logs on the server is a little
tricky, and will be sorted in a later patch.

Change was based on this previous idea:
https://review.openstack.org/#/c/17959/

DocImpact
Part of blueprint xenapi-server-log
Change-Id: I23c83bcf8c648cc2714a0c78951acc29a16d5c31
Merge "xenapi: implement get_console_output for XCP/XenServer"
Merge "Give a way to save why a service has been disabled."
Merge remote-tracking branch 'm_src_repo/citrix-fixes' into build-temp