Change from `map` => `map!` and `collect!` to save creation of extra array.
Remove duplication from date_time calculations

Methods: :past? and :future? are already defined identically
in date_and_time/calculations.rb which is included in Date.
Because DateTime is a subclass of Date, it can call them.
Merge pull request #11678 from vipulnsward/helper_destructive

Change from `map` => `map!` and `collect!` to save creation of extra array
Merge pull request #11681 from gzohari/pr-refactor-date-time

Remove duplication from date_time calculations