Don't mutate the Base settings by merge!ing the given value
Refactor handling of action normalization

Reference:
Bloody mess internals
http://gusiev.com/slides/rails_contribution/static/#40
Reset ActionView::Base.logger instead of AC::Base.logger

see: 9b0ac0bc74569db460f87ea6888b3847be0ff5be
Clean up unused associations in AR test model
change function def self.table_name to self.table_name

change def self.primary_key to self.primary_key

change def self.primary_key to self.primary_key
:scissors: [ci skip]
More unused associations in AR test models
Fixes typo in Object#try!
Be sure to restore the default I18n.locale after changed its value in a test
Update Rails 3.2.x guide link [ci skip]
Use Ruby 2.0 caller_locations instead of caller if available

* we no more have to manipulate the each caller strings by ourselves using caller_locations

* caller_locations runs slightly faster, and creates less objects than good old caller
Benchmark (loading an Engine 1000 times):
  caller: 262.89 ms
  caller_locations: 186.068 ms
Merge pull request #12193 from arunagw/revert-revert

Revert fixes