CLOUDSTACK-6935 refactor StoragePoolAllocator#filter logic

to support IOPS capacity control in a cluster wide storage pool and a
local storage pool
to enable hypervisor type check, storage type check for root volume and
avoid list check
Revert "CLOUDSTACK-6935 refactor StoragePoolAllocator#filter logic"

This reverts commit cd414a0f56798ae801fc464be127e37daabef809.
CLOUDSTACK-6936: UI - (1)dialog widget > dropdown field > provide a blank option if there is no data for option(s) in a dropdown field. (2) Add Primary Storage dialog - cluster dropdown field - still calls args.response.success() when there is no data for option(s).
CLOUDSTACK-6934: don't try to detach volume from host when volume was never allocated to a primary storage
CLOUDSTACK-6935 refactor StoragePoolAllocator#filter logic

to support IOPS capacity control in a cluster wide storage pool and a
local storage pool
to enable hypervisor type check, storage type check for root volume and
avoid list check

Since original commit(31de58edab563eb1cb50c5c06437fdd3efc6a3d2) contained
a bug, it was reverted and this commit is a revised one.
CLOUDSTACK-6662
CLOUDSTACK-6844

 exit status delivery might get delayed

 Please enter the commit message for your changes. Lines starting