RepositorySet-API: Added the functionality to enable RedHat Repos.

Added `list_rhproducts` function to list all the RedHat Products
in a given Organization.

RH Products have varying Id's depending upon various other custom
products, hence we use the product-label which is a static value
to fetch the RH Product's ID in `fetch_rhproduct_id` function.

RH Reposets too have varying ID's hence we use reposet-label which
is a static value to fetch the RH Reposet's ID in `fetch_reposet_id`
functio.

Also RH Repositories first need to be enabled , so that they can be
synced.
`enable_repo` and `disable_repo` functions requires the
`reposet_id`, `basearch` and `releasever` to enable, disable the
repositories.
The following prose is bad english. What is doing the returning?

> If a user specifies a `which` of `'foo'`, returns a path in the format `'bar/biz'`.

The word "returns" can be used if you specify what is doing the returning.

> If a user specifies a `which` of `'foo'`, this method returns a path in the format `'bar/biz'`.

Repeatedly using the phrase "this method returns" is tiresome. If possible, it's nice to tighten the wording by using a more "commanding" voice.

> If a user specifies a `which` of `'foo'`, return a path in the format `'bar/biz'`.

Even the above is not ideal. The action should come as early in the sentence as possible.

> Return '`bar/biz`' if the user specifies a `which` of `'foo'`.