core: make RunVmValidator stateful

RunVmValidator, as implied by its name, contains validations that should
be checked before running a VM. The relevant information for those
validations is the VM which is going to be run, the parameters for the
run command and whether the run command is internal or not.

This patch changes RunVmValidator to take the information it needs,
which is mentioned above, at creation time (i.e as arguments in its
constructor) and save it as part of the instance state. That way, we
won't need to pass it on each invocation from outside of this class.

Change-Id: I5f2f0ce4a0a92ff610f5c2a8be1e084f0c188f77
Signed-off-by: Arik Hadas <ahadas@redhat.com>