baremetal: Integrate provisioning and non-provisioning interfaces

Originally, baremetal pxe/tilera driver managed two types of network
interfaces in two tables; provisioning interfaces in bm_nodes table
and non-provisioning (normal) interfaces in bm_interfaces table.
But, now actually both types are handled in the same way and there is
no difference between them except for which table they are in.

This patch moves the provisioning interfaces to bm_interfaces. However
it does not drop prov_mac_address in bm_nodes since VirtualPowerManager
still uses it to identify a target in a list of VMs returned by the
VM's host.

Change-Id: I5ce940e7127aa3b29ba7802612938dc5dbc3152f
baremetal: VirtualPowerDriver uses mac addresses in bm_interfaces

VPD uses bm_interfaces.address instead of bm_nodes.prov_mac_address
to lookup a target VM. This patch follows the change in
I5ce940e7127aa3b29ba7802612938dc5dbc3152f, which moves
bm_nodes.prov_mac_address to bm_interfaces.address.

Change-Id: I2bab869b282958ee9fd0e4776928e56351018324
baremetal: Change node api related to prov_mac_address

Now prov_mac_address is going to be dropped from bm_nodes table. This patch
adjust api to the change.

A user is expected to create a node without specifying prov_mac_address, then add
an interface having the address to the node. However, for compatibility, a user
still can specify prov_mac_address when create a node. In this case, an interface
having prov_mac_address is automatically added to the node.

In response body of create, index and show, "prov_mac_address" field no longer
exists since they are showed as a member of "interfaces" fileld.

Change-Id: I6653829364b0a641442d45e766493180d6f2a880
Merge branch 'bm-vpd'