Removing the requirement that Rails::Application be a singleton, and
reworking the way the main app is initialized.
Added an instance method in rails/application that overrides the
instance method in railties. This stops you from creating a new
application whenever instance is called. Added global config to the
rails application.
Using instance eval instead of class_eval when configuring a new
application. Creating instance methods
linking up to class methods in order to handle this.
Also, changing the way we handle config. The Rails.config command will create
a global config if it doesn't already exist.
Removing old way that configurations where changed inside of
config/environments files. They now use the global +Rails.config+ and
are configured using the new +Rails.configure+ method.
Creating tests to make sure that multiple applications can be
initialized correctly. Also changing some documentation.
Created a method for cloning applications. This is a shallow clone so
that each application that is cloned shares the same configuration,
routes, env_config, etc.