Add drivers.base.BaseDriver.get_properties()

Adds ironic.drivers.base.BaseDriver.get_properties() which returns a
dictionary of <property>:<description> entries.

The driver interfaces (DeployInterface, PowerInterface, ...) have a
new get_properties() method that returns a dictionary of
<property>:<description>.

These changes are needed in order to provide an API to get driver_info
properties.

Change-Id: I5994e990deb26841633ca26de1a5fb63b743271a
Blueprint: get-required-driver-info
Partial-Bug: #1261915
Merge "Add drivers.base.BaseDriver.get_properties()"