CA-144658: Do not call squeezer if Host have enough free memory for create VM

In this fix, the problem is in bootstorm, squeezer will be a bottleneck here. For the test environment configure here, start VM don't need squeezer to work since there is lot of memory free in host.
So as a workaround here, we don't need to call squeezer if there are lot of free memory and also all other VMs' memory target has been met.
This fix add a conditional check in change_host_free_memory, which is let "finished" to be true if host memory requirement is smaller than free memory and all VMs meet their targets.

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>
CA-144658: Use List.all to get result

As comments by simon, using List.all to replace for all function I wrote.

Signed-off-by: Cheng Zhang <cheng.zhang@citrix.com>