Add a test subscribing a system to a content view

Add a new test module: `tests.foreman.api.test_contentview_v2`. Add a test to
this module which does the following:

1. Create an organization, lifecycle environment and content view.
2. Publish the newly created content view.
3. Promote the newly published content view.
4. Create a system which references the organization, lifecycle environment and
   content view.

Update the following methods:

* `ContentView.publish`
* `ContentViewVersion.promote`

Make these two methods raise an exception if an HTTP 4XX or 5XX response is
received, or return decoded JSON data otherwise. Update all usages of those
methods.
Merge pull request #1237 from Ichimonji10/test-subscribe-system

Add a test subscribing a system to a content view