Explicitly list out optional requirements

Create a file that lists out all optional requirements. Mention how to install
the optional requirements in the readme.
Merge pull request #6 from Ichimonji10/requirements

Explicitly list out optional requirements
Make compatible with Python 2 and 3

Use Python 3 style print statements. Add `from __future__ import print_function`
for compatibility with Python 2.

Drop iniparse. It is a module which must be separately installed, it has not
received any updates since 2010, and the configparser module from the standard
library accomplishes the same end goal.

Drop the weird exception handling in the import section of
`katello_rapidnode.py`. It is redundant, as Python will throw an exception if a
module cannot be imported. It is also harder to read than normal imports, the
resultant errors provide less information than the standard error messages do
annoying to read, and it generally bothers me.

Both the Python 2 and Python 3 versions of flake8 and pylint now process
`katello_rapidnode.py` without producing any fatal errors.
Merge pull request #7 from Ichimonji10/py23

Make compatible with Python 2 and 3
Fix config file parsing

Add `configparser` to the list of requirements. ConfigParser saw a major update
in Python 3.2, and this module backports those changes to Python 2.6.  The
default configparser module is used in Python 3.2+, and the backported version
is used in older versions of Python.

As a side-effect of this change, drop a conditional import and do not bother
inspecting `sys.version_info`.
Merge pull request #9 from Ichimonji10/config-file

Fix config file parsing