CA-121671: Tighten up PGPU.set_enabled_VGPU_types

The PGPU.remove_enabled_VGPU_types API checked if there were any VMs running of
that type before disabling the type. However, the set_enabled_VGPU_types call
(which may disable some types) made no such check.

Signed-off-by: Si Beaumont <simon.beaumont@citrix.com>
Correct field name in assert_no_resident_VGPUs_of_type

Signed-off-by: Si Beaumont <simon.beaumont@citrix.com>
Merge pull request #1575 from simonjbeaumont/ca-121671

CA-121671: Tighten up PGPU.set_enabled_VGPU_types
Merge pull request #1576 from johnelse/vgpu-type-import

VGPU_type import fixes
CA-122441: Update group supported/enabled types after GCing PGPUs

Signed-off-by: John Else <john.else@citrix.com>
Log every time we GC a PGPU

Signed-off-by: John Else <john.else@citrix.com>
Add new fields to make_vgpu_type

Signed-off-by: John Else <john.else@citrix.com>
Improve consistency of test_common.ml

Fix all the make_* functions such that they return the ref of the thing
which they created.

Signed-off-by: John Else <john.else@citrix.com>
CA-122441: Add unit test for GPU_group supported/enabled VGPU types

Signed-off-by: John Else <john.else@citrix.com>