#4566: Remove extra decrement of transaction level

`rollback_active_record_state!` tries to restore model state on `Exception`
by invoking `restore_transaction_record_state` it decrement deep level by `1`.

After restoring it ensure that states to be cleared
and level decremented by invoking `clear_transaction_record_state`,
which cause the bug: because state already reduced in `restore_transaction_record_state`.

Removed double derement of transaction level
and removed duplicated code which clear transaction state for top level.
Merge pull request #11434 from jetthoughts/new_save_transaction_bugfix

Remove extra decrement of transaction level
Revert "Don't use Rack::Sendfile middleware if x_sendfile_header is not present"

This reverts commit 19ac034bdc9be175eff7cf54208ba14b43d97681.
And allows webservers to configure X-Sendfile-Type.

Closes #11440 thanks to [@MSch]

Conflicts:
	railties/lib/rails/application.rb
Rack::Sendfile is now included in middleware by default, change tests to reflect that
No need to add config for x_sendfile_header

Rack::Sendfile is loaded by default now
Added CheckPending middleware in default

As this middleware comes by default in a new
rails app

Added test to check omit for CheckPending when

Active Record is not included.
Merge pull request #11448 from arunagw/updated_middleware_test

No need to add config for x_sendfile_header
Remove deprecation warning from attribute_missing 

for attributes that are columns.
Merge pull request #11282 from arunagw/deprecation-removed-attribute-missing-activerecord

Remove deprecated `attribute_missing`.
Do not re-save destroyed association on saving parent object

Closes #11450
Merge pull request #11451 from jetthoughts/11450_do_not_resave_destroyed_association

Do not re-save destroyed association on saving parent object
use arel rather than slapping together SQL strings
reorder bind parameters when merging relations
removing useless assingment
save another array allocation