Enterprise HA support and Origin HA improvements

    Enterprise HA support and Origin HA improvements

    - General oo-install changes
      - Adding initial ose-2.2 support to Rakefile
      - change defaults for valid_gear_sizes and user_default_gear_sizes
        - previous defaults resulted in failed oo-diagnostics runs on
          hosts
      - generalize ha service account configuration
        - added support for setting/synchronizing similar to
          set_synchronized_attr
      - set a default for component_domain if no domains seen yet
        (outside of
        app_domain), defaults to hosts.#{app_domain}
      - default host.user to previously seen user
      - manual ip address configuration will default to ssh_host if
        ssh_host
        is an ip address
      - enable manual interface configuration for ose, default to first
        interface
      - add support for setting mongo replica set name
      - refactor mongo primary configuration to use first mongo host
      - output dnssec_key if set, not just if using external dns
      - update host_instance close_ssh_session to skip already closed
        connections
      - remove unused workflows
      - add support for setting broker_auth_salt, broker_session_secret, and console_session_secret
      - Add support for using dns round robin for ha brokers for enterprise
      - improve error handling on ssh host key mismatch and other ssh exceptions
      - Refactor subscription configuration
      - Add options for configuring extra repos for all subscription methods
        with the -r flag for enterprise
      - Switch yum config to use CONF_CDN_REPOS_BASE for enterprise
      - Remove ability to add existing host
        - functionality was broken due to not synchronizing passwords and
          secrets between existing hosts and new hosts.
      - Use enterprise-2.2 openshift.sh when deployed for origin workflows and by default.
      - Improve error handling for invalid config files
      - Set keepalive to true for ssh sessions
      - Better ssh error handling for confirm_access
      - Remove stray mention of already configured hosts
      - fix bug with not setting named_ip_addr for external dns
      - Do not limit ip interface config to node only
      - Fix for -w flag
      - Add validation that HA mongo has an odd number of hosts and nodes do not have other roles
        (other than all-in-one)
      - remove ability to colocate other services with node other than all-in-one
      - Make sure node role cannot be added when modifying roles if host has a different role already
      - Update openshift.sh to latest 2.2 version
      - Remove support for OSE 1.2, require puppet module version 4.0.12 for origin

    - origin_deploy workflow changes
      - cleanup some dead code in originator.rb
      - support for setting BROKER_AUTH_PRIV_KEY and generating BROKER_AUTH_PUB_KEY from it
      - Fix issue with interface configuration on broker
      - Update the puppet_template workflow to not be a remote execution workflow

    - enterprise_deploy workflow changes
      - Remove dead code
      - fix ssh address, cleanup hostfile usage a bit
      - fix components_list logic
      - fix up logic for setting activemq and datastore replicants for
        ha installs
      - Some cleanup, use tempfile for hostfile
      - logic and ordering changes
      - support for setting broker_auth_priv_key
      - better error checking for steps in launcher.rb
      - fix single host CONF_NAMED_ENTRIES
      - change @steps from a hash to an array to preserve ordering
      - create a temp directory for creating hostfiles, prevents issue on
        local runs
      - do not scp hostfile and openshift.sh on a local install, use cp
        instead