Added test to ensure that DescendantsTracker does not leak memory on singleton classes
Change ActionController::Parameters#require behavior when value is empty
When the value for the required key is empty an ActionController::ParameterMissing is raised which gets caught by ActionController::Base and turned into a 400 Bad Request reply with a message in the body saying the key is missing, which is misleading.

With these changes, ActionController::EmptyParameter will be raised which ActionController::Base will catch and turn into a 400 Bad Request reply with a message in the body saying the key value is empty.
DirtyModel uses a hash to keep track of any changes made to attributes
of an instance. When using the attribute_will_change! method, you must
supply a string and not a symbol or the *_changed? method will break
(because it is looking for the attribute name as a string in the keys
of the underlying hash). To remedy this, I simply made the underlying
hash a HashWithIndifferentAccess so it won't matter if you supply
the attribute name as a symbol or string to attribute_will_change!.
make sure both headers are set before checking for ip spoofing
Fix doc in Postgres database creation
Raising an error when nil or non-hash is passed to update_attributes.
add active model basics wip to guides/documents.yaml
Remove sqlite specific`supports_autoincrement?` which always defaults to true
support :unless_exist for FileCache
allow to test AR master against AR-JDBC master (with `ENV['AR_JDBC']`)
`export AR_JDBC=true` on travis-ci as a *before_install* (but on jruby only)
"generates" applies to "collection radio" so it should be singular
take out reference to previous versions of Rails
Revert ""generates" applies to "collection radio" so it should be singular"

This reverts commit faeb33dc036e4f707491c91a23ee3e990573141b.

Reason: Code changes can't be done on docrails
Moved all JSON core extensions into core_ext/object/json

TL;DR The primary driver is to remove autoload surprise.

This is related to #12106. (The root cause for that ticket is that
json/add defines Regexp#to_json among others, but here I'll reproduce
the problem without json/add.)

Before:

   >> require 'active_support/core_ext/to_json'
   => true
   >> //.as_json
   NoMethodError: undefined method `as_json' for //:Regexp
     from (irb):3
     from /Users/godfrey/.rvm/rubies/ruby-2.0.0-p195/bin/irb:16:in `<main>'
   >> //.to_json
   => "\"(?-mix:)\""
   >> //.as_json
   => "(?-mix:)"

After:

   >> require 'active_support/core_ext/to_json'
   => true
   >> //.as_json
   => "(?-mix:)"

This is because ActiveSupport::JSON is autoloaded the first time
Object#to_json is called, which causes additional core extentions
(previously defined in active_support/json/encoding.rb) to be loaded.

When someone require 'active_support/core_ext', the expectation is
that it would add certain methods to the core classes NOW. The
previous behaviour causes additional methods to be loaded the first
time you call `to_json`, which could cause nasty surprises and other
unplesant side-effects.

This change moves all core extensions in to core_ext/json. AS::JSON is
still autoloaded on first #to_json call, but since it nolonger
include the core extensions, it should address the aforementioned bug.

*Requiring core_ext/object/to_json now causes a deprecation warnning*
Updated with latest method [ci skip]
Updated the file path [ci skip]
Updated guides with latest method [ci skip]
Removed doc of diff method [ci skip]
asset_url => asset-url in sass-rails docs [ci skip]