baremetal: Make volume driver use a correct source device

attach_volume() have to take the source device path from returning of
LibVirtVolumeDriver.connect_volume() rather than connection_info.

It also adds a test for attach_volume().

Change-Id: I3bee80560342104e2df614066301171624497a04
Closes-Bug: #1208707
Fix empty selector XML bug

The XML serialization fails when it's trying to create a datum selector with no
values. In that case the obj is an empty string so the selection of datum from
it just fails.
Instead of raising an exception the fix is returning an empty string, that
allows to serialize Selector with an empty object.

Fixes bug 1223358

Change-Id: If5d564c9b037eb0a107f4688ffa1aceb5281dc42
Change evacuate test hostnames to preferable ones

The hostname grammar in RFC952 does not allow for underscores in
hostnames. However, some evacuate tests use them in each hostname.
This patch changes them to hyphens instead.

Change-Id: Id961e74a0bbeefbc843678edd74c02466b6d6885
Misc typos in nova

1. on demands -> on demand
2. Either Network -> Either network
3. unexpected task -> Unexpected task
4. PCI Device -> PCI device
5. key manager -> Key manager

Change-Id: I5a3cb64b38e8851902492c15fda7f63c4fa4f7f0
Closes-Bug: #1255914
Merge "Fix empty selector XML bug"
Merge "Change evacuate test hostnames to preferable ones"
Merge "baremetal: Make volume driver use a correct source device"
Merge "Misc typos in nova"