cherrypick: Update block_device_info to contain swap and ephemeral disks (backport of bug 1305423)

Original bug report (fixed in Juno master) is at https://bugs.launchpad.net/nova/+bug/1305423

Upstream review for this backported bugfix is at: https://review.openstack.org/#/c/100362/