Allow hard reboots when still attempting a soft reboot

Commit cc0be157d005c5588fe5db779fc30fefbf22b44d introduced a
regression in the reboot code. Previously, a hard reboot could be
performed when an instance was in soft reboot.

This fixes the regression by allowing a hard reboot when the instance
is in one of the two new task states.

Closes-bug: 1362799
Change-Id: Id8aaf852b0cccb75a79794a8bf9eb94e21550b81
Remove unused config "service_down_time" reference

service_down_time was used in service API and it's not used.
It was removed at commit I1e7e8f7519ec627b96736f74ee7123d101973544.

Change-Id: Ibf9c7082e148a3253051e5d60eacc4d891420ae7
Add support for hypervisor type in IronicHostManager

Unlike the default HostManager the IronicHostManager doesn't pass
hypervisor attributes of the compute_node into the HostState.

Adding support for hypervisor_type makes it easy to use the
compute_capabilities filter in a combined Ironic/virt system
with a simple extra_specs value on flavors.

For completeness the following values are added:
hypervisor_type
hypervisor_version
hypervisor_version
cpu_info
supported_instances

Change-Id: I1c81bb9726597609c4e5918eb15b4f2a055e7912
Closes-Bug: #1370578
Merge "Remove unused config "service_down_time" reference"
Merge "Add support for hypervisor type in IronicHostManager"
Merge "Allow hard reboots when still attempting a soft reboot"