Upgraded rack
As Rack has some non backwards compatible changes added required
modifications to keep behaviour in rails close to same as before.

Also modified generators to include rack/rack for not yet released
version of rack
Since upgrading rack we can remove unnecessary string encodings
https://github.com/rack/rack/commit/5a5aee36
Remove PG's definition of `type_cast`

All cases except for `nil` in an array have been removed. `nil` in an
array is handled by the Array type object.
Don't rely on the sql type to quote XML columns in PG
Reduce number of subscriptions created.
Merge pull request #16072 from sgrif/sg-xml-quoting

Don't rely on the sql type to quote XML columns in PG
Merge pull request #16071 from sgrif/sg-pg-type-cast

Remove PG's definition of `type_cast`
Warm up cache to prevent assertion failure.
Merge pull request #16093 from zuhao/refactor_activerecord_nested_through_associations_test

Warm up cache to prevent assertion failure.
Include fixtures to prevent foreign key violation.
Merge pull request #16094 from zuhao/refactor_activerecord_belongs_to_associations_test

Include fixtures to prevent foreign key violation.
[ci skip] Add changelog for PR #14899

The changelog entry for #14899 was missing.
Merge pull request #16095 from eileencodes/update-changelog-for-pr-14899

Add changelog for PR #14899
Merge pull request #13999 from jamox/update_rack

This updates rails to use edge rack
correct markdown usage [ci skip]
Merge pull request #16097 from nishantmodak/correct_md

correct markdown usage [ci skip]
Fix weird comment. [CI SKIP]
[ci skip] Fix 4.2 release notes rendered display.
Merge pull request #16100 from tgxworld/fix_comment

Use proper possessive punctuation [ci skip]
Merge pull request #16102 from JuanitoFatas/format-fixes

[ci skip] Fix 4.2 release notes rendered display.