openshift.ks: Optionally register with RHN/RHSM

configure_rhn_channels, configure_rhsm_channels: Only register with RHN or
RHSM if credentials are provided.

configure_rhsm_channels: Only attach to a pool if a pool id is provided,
and skip any pools that are already attached.

validate_preflight: Allow the installation to proceed even if the rhn or
rhsm installation method is being used without any credentials provided,
as long as the host is already registered, and also allow installation
to proceed with the rhsm method even if no pool id is provided as long
as the required repositories are already available and credentials are
not provided (providing credentials would imply that we should register,
and re-registering would remove the existing repositories).

These changes allow the user to register with RHN or RHSM before running
the script and then use the rhn or rhsm installation method to have the
installation script configure channels, priorities, and excludes and
validate the configuration.

This commit fixes bug 1056906.