Raise `ArgumentError` when `has_one` is used with `counter_cache`

Previously, the `has_one` macro incorrectly accepts the `counter_cache` option
due to a bug, although that options was never supported nor functional on
`has_one` and `has_one ... through` relationships. It now correctly raises an
`ArgumentError` when passed that option.

For reference, this bug was introduced in 52f8e4b9.
Merge pull request #13107 from chancancode/has_one_counter_cache_should_raise

Raise `ArgumentError` when `has_one` is used with `counter_cache`
Fix segmentation fault in Ruby 2.0.0-p353.

In Ruby 2.0.0-p353 there was a
[commit](https://github.com/ruby/ruby/commit/66915c507777c5e3a978fa73de25db763efd9206)
that switched case matching from actual sending `===` method to magic lookup,
that does not see it in `method_missing`. It's hard to predict how exactly and
when exactly this bug will be solved so here I suggest a solution of defining
it in Duration directly.

In Ruby 2.0.0-p353 without the added fix added test crashes to segmentation
fault.
Typo fixes [ci skip]
Merge pull request #13111 from akshay-vishnoi/typo

Typo fixes [ci skip]
Improve AR changelog [ci skip]
Merge pull request #13055 from dmitriy-kiriyenko/fix-segmentation-fault-it-ruby-2.0.0-p353

Fix segmentation fault in Ruby 2.0.0-p353.
Fix stream closing when sending file with `ActionController::Live` included.

Fixes #12381