Added method `#eql?` to `ActiveSupport::Duration`, in addition to `#==`.

Currently, the following returns `false`, contrary to expectation:

    1.minute.eql?(1.minute)

Adding method `#eql?` will make this behave like expected. Method `#eql?` is
just a bit stricter than `#==`, as it checks whether the argument is also a
uration. Their parts may be different though.

    1.minute.eql?(60.seconds)  # => true
    1.minute.eql?(60)          # => false
Updating Associations::Preloader docs

Much of the previous documentation introduced features new in 2011. This
commit refreshes it to provide clearer code examples and spends more
time describing the normal case (preloaded associations) and less time
describing the fallback.

[ci skip]
Roll back open transactions when the running thread is killed.
Default to sorting user's test cases for now

Goals:

1. Default to :random for newly generated applications
2. Default to :sorted for existing applications with a warning
3. Only show the warning once
4. Only show the warning if the app actually uses AS::TestCase

Fixes #16769
[ci skip]Correct variables in the sample code
Merge pull request #16861 from suginoy/fix_typo_people_post

[ci skip]Correct variables in the sample code
i18n guide: clarify interpolation rules in _html keys [ci skip]
Replace drop sql statement to drop_table method
to drop sequences at the same time each tables dropped for Oracle
Merge pull request #16867 from yahonda/use_drop_table_to_drop_sequences

Replace drop sql statement to drop_table method
Merge pull request #16379 from JackDanger/update-preloader-documentation

Updating Associations::Preloader docs
ActiveJob Integration Tests
MySQL: correct LONGTEXT and LONGBLOB limits from 2GB to their true 4GB
MySQL: schema.rb now includes TEXT and BLOB column limits.
Include default column limits in schema.rb

Allows :limit defaults to be changed without pulling the rug out from
under old migrations that omitted :limit because it matched the default
at the time.
Speed up schema dumper tests

Dump the standard schema once instead of redoing it per test
Merge pull request #16541 from cristianbica/activejob-integration-tests

ActiveJob Integration Tests
Merge pull request #16839 from chancancode/default_test_order

Default to sorting user's test cases for now
Fix typo
Set the test order to be random in the generated app

This will avoid the warning in our tests. We delete all the
config/environments/ files in the test app so our default code will not
work.
Set test order in ActiveSupport::TestCase of isolation/abstract_unit