Add more entities and factories

Add the following classes in module `robottelo.entities`:

* `Organization`
* `Product`

Add the following classes in module `robottelo.factories`:

* `OrganizationFactory`
* `ProductFactory`

The "Product" entity includes a required foreign key field, so factories must be
capable of generating values for those fields. Update function
`robottelo.factories._get_default_value` with the ability to handle fields of
type `orm.fields.OneToOneField`. Write unit tests to check this functionality.
Improve API documentation interlinking

Transform several references to other functions and classes into hyperlinks.
Improve factory unit tests

Write some simple unit tests for the following factory classes:

* HostFactory
* ModelFactory
* OrganizationFactory
* ProductFactory

The new unit tests are very simple: they just ensure that each factory can be
instantiated, and that each factory is paired with the correct entity.
Fix flake8 error
Merge pull request #946 from Ichimonji10/factories

Yet more factory-related stuff