Implement orm.OneToManyField
Merge pull request #926 from elyezer/orm-one-to-many-field

Implement orm.OneToManyField
Add method `get_server_credentials`

New method simply returns a tuple of ('username', 'password'). It's simple, but
more convenient than reading values from the config incrementally. Also, add
unit tests for the new method.
Create some simple tests for path api/v2/hosts

Implement a few tests which check whether it's possible to GET or POST to the
path. Check for things like whether an HTTP 200 is generated when a GET request
is issued, that sane sets of data are returned, and that an HTTP 401 is
generated when an unauthorized HTTP request is made.
Decorate method with `skip_if_bz_bug_open`
Create some simple tests for path api/v2/models

Implement a few tests which check whether it's possible to GET or POST to the
path. Check for things like whether an HTTP 200 is generated when a GET request
is issued, that sane sets of data are returned, and that an HTTP 401 is
generated when an unauthorized HTTP request is made.
Make Testimony happy with docstrings
Refactor tests

Use a `for` loop instead of repetitively listing out function calls.
Further refactor tests

Add fauxfactory to `requirements.txt`. Use fauxfactory in the tests.
Add new module `robottelo.factories`

Do not include any useful code in this module. Instead, simply write out a
docstring.

Make the API docs include this new module.
Add minimal content to module robottelo.factories

Create the following classes:

* Factory
* HostFactory (inherits from Factory)
* ModelFactory (inherits from Factory)

Implement the following methods on `Factory`:

* `__init__`
* `attributes`

The new factories can be used for quickly building new entities on a Foreman
server.
Add test for method _get_protected_fields

Tested method is in module `robottelo.factories`.