Fix robottelo.api.client

The Python requests library has changed upstream. Make module
`robottelo.api.client` match the upstream changes.

Update the tests for this module. Use the mock library. This allows mock classes
to be dropped, manual patching/unpatching to be dropped, and function calls to
be inspected at a more granual level.
Merge pull request #1505 from Ichimonji10/fix-api-client

Fix robottelo.api.client
Update CLI activation key factory

The unlimited-content-hosts option was updated upstream. Updating the
factory to match it.

Related to #1502
Merge pull request #1504 from elyezer/fix-cli-smoke

Update CLI activation key factory
Add method `EntityReadMixin.read_raw`

`read_raw` makes a call to the server being tested and returns a
`requests.models.Response` object. It does not perform any validation, such as
checking the HTTP response code or decoding JSON.

Make `EntityReadMixin.read_json` call `EntityReadMixin.read_json`.
Remove 404 handling logic from `EntityReadMixin.read_json` and add this logic to
class `ActivationKey`. The 404 handling logic is only relevant to activation
keys.

Make module `test_multiple_paths` call `read_raw` instead of directly calling
`robottelo.api.client`.
Merge pull request #1500 from Ichimonji10/read-raw

Add method `EntityReadMixin.read_raw`
Cleanup old API code

Drop the records code in favor of the new API code. Also remove tests
and documentation related to the old code.
Update PERMISSIONS constant

The permissions have changed upstream, this updates the PERMISSIONS
constant to match the new changes.

Related to #1507
Add NetmaskField and update Subnet entity

Due to recent upstream builds the mask Subnet's fields are being
validated for a valid netmask value. This adds a NetmaskField that
generates valid netmasks using FauxFactory gen_netmask generator. Also
updates the Subnet's mask field to NetmaskField.

Related to #1514
Merge pull request #1509 from elyezer/update-permissions-constant

Update PERMISSIONS constant
Merge pull request #1515 from elyezer/update-subnet-entity

Add NetmaskField and update Subnet entity
Merge pull request #1506 from elyezer/cleanup-old-api-code

Cleanup old API code
Added rough draft of the Robottelo code standards

This is the initial draft of the Robottelo Code Standards.
I have created the format and some basic guidelines and background.
However, it will be up to the other members of the team to fill in
items that they feel are important.
Merge pull request #1503 from JacobCallahan/standards

Added rough draft of the Robottelo code standards
Update make_sync_plan CLI facotory

Add the new enable option to the factory. Also add missing arguments for
organization lookup.

Closes #1516
Merge pull request #1517 from elyezer/update-sync-plan-factory

Update make_sync_plan CLI facotory
Skip some activation key tests due to BZ 1127335

Elasticsearch is used to index new activation keys when they are created.
Unfortunately, elasticsearch cannot keep up when the system is under heavy load.
Make `ActivationKey.read_raw` only re-try a read upon receiving a 404 if
bugzilla bug 1127335 is open. Add the the `skip_if_bug_open` decorator to all
appropriate tests in module `test_activationkey`.
Merge pull request #1521 from Ichimonji10/test-activationkey

Skip some activation key tests due to BZ 1127335
Improve UI logout

Make the browser window scroll to top to ensure that logout menu is
visible.

Bonus: some formatting love
Merge pull request #1525 from elyezer/improve-ui-logout

Improve UI logout