Remove session to allow `with_routing` to be called twice.

Fixes: https://github.com/rails/rails/issues/16814
added example of squish!, remove, test case for multiple occurrence of
pattern removal

added example for string#remove and test case for remove of multiple occurence of pattern

removed extra whitespaces
docs, synchronize 4.2. release notes. [ci skip]

/cc @chancancode
Merge pull request #17526 from rishijain/update_docs_6

Update docs 6
Fix grouped expression warning -  `warning: (...) interpreted as grouped expression`
Merge pull request #17536 from vipulnsward/fix-group-expression-warning

Fixed grouped expression warning
Merge pull request #17523 from tgxworld/reset_session_after_calling_with_routing

Remove session to allow `with_routing` to be called twice.
tests, use SchemaDumpingHelper to dump a specific table.

This makes debugging the generated schema output much easier.
As a side effect it also shaves off 2.5 seconds of test runtime.
tests, remove unneeded requires.
added example of hash#except, and removed extra whitespaces [ci skip]
Merge pull request #17543 from rishijain/update_docs_9

added example of hash#except, and removed extra whitespaces [ci skip]
[Enh] Changed the visibility of the ActiveModel::Dirty#clear_attribute_changes method

In Rails 4.2 it is impossible to define a custom default value for a model's
attribute without making it appear as _changed?, especially when the model
is first initialized. Making this method publicly visible will allow such a behaviour,
without the need to use private APIs.
Merge pull request #17545 from marzapower/dirty_public_api

[Enh] Made the ActiveModel::Dirty#clear_attribute_changes method public