restapi: adding support for affinity groups

* Adding a new affinity groups sub-collections for clusters:
GET /clusters/{cluster_id}/affinitygroups

* affinity groups action includes, add, update and remove affinity groups:
POST /clusters/{cluster_id}/affinitygroups/
<affinity_group>
  <name>
  <positive>
  <enforcing>
</..>
GET/DELETE/PUT /clusters/{cluster_id}/affinitygroups/{affinity_group_id}

* Adding VMs sub-collection for a single affinity group: allowing to add/remove
VMs from an affinity group using post/delete:
GET /clusters/{cluster_id}/affinitygroups/{affinity_group_id}/vms
POST /clusters/{cluster_id}/affinitygroups/{affinity_group_id}/vms
<vm id='{vm_id}'>
</vm>
DELETE /clusters/{cluster_id}/affinitygroups/{affinity_group_id}/vms/{vm_id}

* include tests for added resources

For more information please refer
    to: http://www.ovirt.org/Features/VM-Affinity

Change-Id: Ie2daa18742eca73517ef739e70e972d74aad4244
Bug-Url: https://bugzilla.redhat.com/1036638
Signed-off-by: Gilad Chaplik <gchaplik@redhat.com>