clean up configuration

As a developer, I would like to katello.yml is always correctly loaded
As a developer, I would like to katello.yml be loaded only once
As a developer, I would like to config/katello.yml be preferred before /etc/katello/katello.yml
As a developer, I would like to katello.yml not to be in git repository.
remove database.yml
centralize Katello configuration
remove ENV usage from code, use configuration instead
sort available locales
make sure katello_config is loadable stand-alone

fix path interpolation for $LOAD_PATH
remove deprecated ApiConfig
add better definitions of configuration validation

fix ENV usage in config.ru
remove usage of ENV from Katello configuration if needed they can be used in katello.yml
see katello.production.template.yml
add support for block configuration values (result of block's evaluation is used)
keep lines under 100chard
rename TheLoader->Loader and Loader->LoaderImpl
Merge branch 'master' into story/configuration

* master: (37 commits)
  fix monkey patch when RSpec::Version is undefined
  ...

Conflicts:
	src/app/controllers/api/systems_controller.rb
	src/app/views/subscriptions/_new.html.haml
Merge branch 'master' into story/configuration

* master: (38 commits)
  Gemfile - Adds comment marking dependency.
  ...

Conflicts:
	src/app/models/ping.rb
	src/config/initializers/app_config.rb
remove ENV from config.ru
setup bundler before Application definition

which is more usual
fix packaging and katello-configure

update katello.yml template in katello-configure
better error reporting when config validation fails
add password decryption
Merge branch 'master' into story/configuration

* master: (49 commits)
  remove fix for Apipie v0.0.12 and switch to v0.0.13
  ...

Conflicts:
	src/config/application.rb
	src/katello.spec
fix rpm build process
Merge branch 'master' into story/configuration

* master: (28 commits)
  Change menu keys so that no menu items end up having same html 'id' attribute.
  ...

Conflicts:
	src/app/controllers/systems_controller.rb
update .travis.yml to work with config template

copy katello.template.yml before tests
Merge branch 'master' into story/configuration

* master: (11 commits)
  katello-configure - stop foreman before dropping the database
  ...

Conflicts:
	src/app/controllers/application_info_controller.rb
	src/app/models/ping.rb
	src/lib/navigation/main.rb
fix 1.9 incompatibility
Merge branch 'master' into story/configuration

* master: (46 commits)
  Automatic commit of package [katello-repos] release [1.3.1-1].
  ...

Conflicts:
	src/Gemfile
	src/app/controllers/user_sessions_controller.rb
	src/app/views/dashboard/index.html.haml
	src/config/application.rb
	src/katello.spec
857061 - System template actions on the right pane will now close
whenever the new system template button is clicked.
839394 - Changes wording on sync management page when no repositories
are enabled to cross-link to custom repos and red hat provider link.
772199 - Adds a tool tip to explain that GPG keys are optional for
products and repositories.