engine: Correct error message on diskless VM run

Display correct error message when a diskless VM is run on a cluster
with no valid hosts instead of Internal Engine Error.

VmRunHandler.canRunVm now checks if there are available hosts in the
cluster even if the VM has no disks.

Change-Id: I8b346b341cbe3a84b32dff32d14b12aa80c17881
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=908397
Signed-off-by: Martin Betak <mbetak@redhat.com>