Allow password to contain spaces only.
refactor Redirecting so we do not need a controller instance
lazily instantiate application subclasses

this means we can meaningfully override methods in the subclass
Fix DateTime comparison with DateTime::Infinity object

Fixes #16406
Test using turbolinks master

See
https://github.com/rails/turbolinks/commit/153f1b0f04c718442cfd73365a2778dfe1a1c5c7
Define id_was to get the previous value of the primary key

Currently when we call id_was and we have a custom primary key name
Active Record will return the current value of the primary key. This
make impossible to correctly do an update operation if you change the
id.

Fixes #16413
Remove ActionController::RaiseActionExceptions.

The latest modification to the code was done in https://github.com/rails/rails/commit/5e3517ea. In Rails 3.2,
`ActionController#rescue_action` was deprecated and `rescue_action_without_handler` is no longer being used.
Merge pull request #16419 from tgxworld/remove_legacy_code

Remove ActionController::RaiseActionExceptions.
Merge pull request #16412 from yevhene/master

Fix in has_secure_password for passwords containing only spaces.
Fix typo [ci skip]
fix nested `has many :through` associations on unpersisted instances