`find_in_batches` now returns an `Enumerator` when called without a block, so that it
can be chained with other `Enumerable` methods.
Ensure AR #second, #third, etc. finders work through associations

This commit fixes two regressions introduced in cafe31a078 where
newly created finder methods #second, #third, #forth, and #fifth
caused a NoMethodError error on reload associations and where we
were pulling the wrong element out of cached associations.

Examples:

  some_book.authors.reload.second

  # Before
  # => NoMethodError: undefined method 'first' for nil:NilClass

  # After
  # => #<Author id: 2, name: "Sally Second", ...>

  some_book.first.authors.first
  some_book.first.authors.second

  # Before
  # => #<Author id: 1, name: "Freddy First", ...>
  # => #<Author id: 1, name: "Freddy First", ...>

  # After
  # => #<Author id: 1, name: "Freddy First", ...>
  # => #<Author id: 2, name: "Sally Second", ...>

Fixes #13783.
Merge pull request #13786 from terracatta/master

Ensure AR #second, #third, etc. finders work through associations
Calling reset on a collection association should unload the assocation

Need to define #reset on CollectionProxy.
[ci skip] Added missing `file` delivery method
Merge pull request #13728 from semenyukdmitriy/master

Added missing `file` delivery method to the Configuration Guide
Remove duplicate merge
put core at the beginning so other classes can modify the behavior
Add failing test for ActiveModel::Errors#has_key? method

From the doc, this method should return false and not nil if there is no errors for this key
Merge pull request #13790 from kschlarman/collection_association_reset_fix

Calling reset on a collection association should unload the assocation
Make CollectionProxy#reset return self
Improve the CHANGELOG entry [ci skip]
Merge pull request #13791 from kei-s/remove_duplicate_merge

Remove duplicate merge
Move changed_attributes into dirty.rb
Move serialization dirty into serialization.rb
Fix ActiveModel::Errors#has_key? return value
Update ActiveModel::Errors.has_key? test
Merge pull request #13799 from kbrock/better_dirty

Better ActiveRecord hierarchy for Dirty and others
Merge pull request #13795 from bobbus/errors-has-key

Fix ActiveModel::Errors#has_key? returning nil
test boolean and number json param parsing
Merge pull request #13818 from arthurnn/small_test_case

test boolean and number json param parsing