Fix first_disk nil check, ensure disk_list is array

first_disk is returned from unclaimed_disks.find, which means it'll either be an instance of Disk or nil, so testing for empty? throws an error (undefined method `empty?' for #<BarclampLibrary::Barclamp::Inventory::Disk::....)

disk_list needs to always be an array - making it an empty string causes the subsequent disk_list.select to throw an error (NoMethodError: private method `select' called for "":String)
you may use first_disk.nil?