Improve poor security recommendation in docs

As reported in #9960, the current documentation recommends an insecure practice for
key generation from a password (a single round of SHA-256). The modified documentation
uses ActiveSupport::KeyGenerator to perform proper key stretching.
Fixes skipping object callback filters

This allows you to skip callbacks that are defined by objects, e.g. for
`ActionController`:

    skip_after_filter MySpecialFilter

Previously this didn't work due to a bug in how Rails compared callbacks
in `Callback#matches?`. When a callback is compiled, if it's an object
filter (i.e. not a method, proc, etc.), `Callback` now defines a method on
`@klass` that is derived from the class name rather than `@callback_id`.
So, when `skip_callback` tries to find the appropriate callback to
remove, `Callback` can regenerate the method name for the filter
object and return the correct value for `Callback#matches?`.
Typo Fix in AR CHANGELOG [ci skip]
Merge pull request #10273 from prathamesh-sonpatki/AR-typos

Typo Fix in AR CHANGELOG [ci skip]
Rewrites a CHANGELOG entry.

The entry is basically copy & paste of the commit message, but the CHANGELOG
has a different purpose than Git history, it just communicates what is new:

* No need to explain why did the bug happen (unless it is truly relevant).

* No need to explain how was the bug fixed.

* Whether the user gives new names to columns does not really matter, use of
  select to cherry-pick a column for example also presented that behaviour.
  Non-selected attributes are the key, either because they were not included
  in the selected list, or because they were but with a different alias.

* In the case of an attribute alias, what you really want to depict is that
  respond_to? returns false for the original attribute name.
if singletons belong to the contract, test them

Object#respond_to? returns singletons and thus we inherit that contract.
The implementation of the predicate is good, but the test is only
checking boolean semantics, which in this case is not enough.
Increase readability of ternary statement in build method
Merge pull request #10275 from buddhamagnet/master

Increase readability of ternary statement in build method
fix typos
Merge pull request #10280 from vipulnsward/fix_typos_temp

fix typos [ci skip]
Removing tests for deprecated options in active support. The
+use_full_path+ option was removed in 3b3790a4 and passing the template
handler to render was deprecated in 43d27e91.
Merge pull request #10283 from wangjohn/remove_tests_for_deprecated_options

Removing tests for deprecated options in active support.
Added tests for if condition in Active Model callbacks
Merge pull request #10284 from neerajdotname/missing-active-model-tests

Added tests for if condition in Active Model callbacks
fix wrong test description and failure message
Merge pull request #10286 from neerajdotname/fix-wrong-test-name-and-failure-message

fix wrong test description and failure message
fix README links in the main README.md
Merge pull request #10289 from maratvmk/readme

fix README links in the main README.md
extract path into variable
Merge pull request #10290 from buddhamagnet/master

Extract path into variable