Improve Python 3 compat, clean up code

Further improve compatibility with Python 3 by making the `urlparse` import
conditional. Make both pylint2 and pylint3 happy with the conditional imports.

Make some sed expressions use "|" as a separator instead of "/", thus allowing
all occurrences of "\/" to be removed.

Update some comments and shuffle around code to make it more compact and
readable.
Merge pull request #42 from Ichimonji10/noodles

Improve Python 3 compat, clean up code
Improved docstring for cdn_install
Merge pull request #45 from sthirugn/cdn_install_fix

Improved docstring for cdn_install
Update documentation.

Update "Satellite Installation" in readme:

* Update the descriptions of each code example.
* Change the look of the code samples themselves. Use a "sh" code fence to mark
  off each code sample. This'll make the sample look nicer when compiled. Place
  each fab task onto a separate line. This makes it easier to scan through the
  list of tasks, which is the most important part of the sample commands.
* Make some functional changes to sample commands. Add environment variables to
  the sample CDN installation command, and remove `.pub` from the sample `fab
  -i` command.

Update several docstrings in `fabfile.py`. Make it clearer what environment
variables can be specified and what they affect.
Merge pull request #46 from Ichimonji10/howto

Update documentation.
Merge pull request #44 from tkolhar/master

"Added abrt installer script which can be installed on rhel7 foreman"
Rename install_abrt task and improve it

Rename install_abrt task to setup_abrt as the install tasks are for
product installation. Do some improvements related to comments on #44.
Merge pull request #47 from elyezer/improve-setup-abrt

Rename install_abrt task and improve it
Sphinx docs implementation
Merge pull request #48 from sthirugn/docs

Sphinx docs implementation
Make docs build with 0 errors

Comment out an unnecessary configuration file option. This makes Sphinx emit
zero warnings when building documentation.

Make the configuration file flake8 and pylint compliant.
Split environ variables for OS name and version.

Only the ``subscribe`` method really requires the environment variable
that contains the name for the distribution where Satellite 6 will be
installed. Since only **RHEL** is supported for Satellite 6 installs, I
think it is safe to change the expected environment variables to be the
following:

* ``OS_NAME``: most of the time this should be ``rhel``
* ``OS_VERSION``: Major version for one of the supported versions
  of **RHEL**; in this case 6 or 7.
Merge pull request #52 from omaciel/split-distro-variable

Split environ variables for OS name and version.
Run setup_abrt task after upstream install

The setup_abrt will run only on RHEL7.

Also improve the setup_abrt docstring to provide information about its
current availability only on RHEL7.

Closes #49
Merge pull request #50 from elyezer/abrt-rhel7

Run setup_abrt task after upstream install
Add distro_info task

The distro_info task will inspect /etc/redhat-release in order to
discover the distro and version.
Update distro information to use distro_info task

Use distro_info instead of asking for OS_NAME and OS_VERSION environment
variables.
Merge pull request #54 from elyezer/distro-info

Add distro_info task
Merge pull request #51 from Ichimonji10/clean-build

Make docs build with 0 errors