tests: Use frozenset instead of set

Using frozenset ensures that bad code trying ot mutate the return value
of requires() will fail.

Instead of replacing all set(...) calls with frozenset(...), I'm
creating the frozenset in __init__, so there is no way to create an
instance with the wrong type. This also cleans up code that creates a
mock configurator without any requirements.

Change-Id: I11835fe49ffcc3e4cbfdbc4272bc31429b6be2e1
Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/31786
Reviewed-by: mooli tayer <mtayer@redhat.com>
Reviewed-by: Yaniv Bronhaim <ybronhei@redhat.com>
Reviewed-by: Dan Kenigsberg <danken@redhat.com>