<oo-admin-check-sources.py> New tool for checking repo/subscription config

https://trello.com/c/sYLNUE8d/117-8-tool-needed-to-enforce-repo-compatibility-for-openshift

This tool uses the Yum API, so is written in Python. Some effort is
made to ensure compatibility with Python 2.6 and 2.7.

Implemented so far are

* repository priority checks and fixes for known "blessed"
  repositories

* some detection of potential repo conflicts and logic to fix those
  automatically

* functionality based on role (node, broker, etc.)

* minimal role-guessing

* missing repository/subscription detection

* etc.

TODOs include:

* detect and enabled required repositories that are subscribed but
  disabled

* add README

* whatever is outlined in the trello card but missing from this list
<check_sources.py> replace RHNPLUGIN with filepath param in backup_config
<check-sources> Addressed various review concerns, added some helper functions

This commit mainly fixes concerns raised by Miciah during code review

* Fixed misuse of "Keyword arguments" in docstrings

* Picked a better accessor for getting all configured repos

* Removed side-effects from _yb_no_pri and fixed up dependent
  functions

In addition, some helper functions have been added to
OpenShiftCheckSources:

* repoids([]) returns a list of repoid strings for a list of repos

* enabled_repos, disabled_repos, all_repos and *_repoids convenience
  functions added
fixed report section name typo
added logic to detect and enable disabled repos

TODO: Enabling the repo doesn't seem to work correctly for RHSM - fix it
addressed some issues found by QE:

Missing repo detection was broken for repos that were actually missing

Enabling repos didn't work for RHSM

Also added less satanic RHN repo detection
UI cleanup, RHSM repo auto-fix, notes for RHSM upcoming changes

Cleaned up some of the sucky output messages, hopefully the output
should be easier for humans to read now

Fixed UI flow - if yum-plugin-priorities is missing, the app will die

Added YumBase.preconf setting to force subscription-manager plugin to
fix the redhat.repo file prior to building the enabled/disabled repo
lists