Fix resizes with attached file-based volumes

Bug 1190364

get_instance_disk_info() now takes an additional, optional argument
of block_device_info. When passed in, we use it to filter out
volumes, such that they are not returned. Previously, any devices
classified as "file" as parsed from the instance XML were considered
local disks. This assumption is incorrect, since some volumes are
simply files, rather than block devices.

Added a new test, based almost entirely off the existing test case
for this function, which represents an XML file with two fake
file-based (NFS-like) volumes and associated block_device_info to
claim those volumes.

Change-Id: I4809a8fd68eb0f709347aa7cad0fa85389ade41c
(cherry picked from commit e71081b856b06513cc1e56a9adb2a619967f0eae)
Merge "Fix resizes with attached file-based volumes" into stable/grizzly