Make better error messages

Call a function that builds an error message whenever any tests fails in module
tests.foreman.api.test_multiple_paths fails. This allows the testing code itself
to be more concise and for error messages to be more consistent.
Use a content-type of application/json

By default, use a content-type fo application/json whenever sending a request
via module `robottelo.api.client`. If the content-type of a message is
application/json, also encode the data in that message as json. If the user
explicitly sets the content-type of a message, do not override that setting.

Add tests to ensure this code is correct.
Refactor existing tests and docstrings.

Use the ddt module to slim down existing tests. Rewrite some docstrings to
improve intra-documentation links.
Update module docstring
Make all requests application/json by default

Give all requests issued via `robottelo.api.client` a content-type of
application/json. Make logging occur after request headers and data have been
fiddled with, not before.
Update tests for module robottelo.api.client
Use HTTP status code names, not numbers
Merge pull request #1007 from Ichimonji10/json-requests

Set content-type to application/json by default.