Added partial days support to `DateTime`'s `advance` method.

You can now add partial days (e.g. 2.5.days) to `DateTime` with the advance method.
This was acheived by mimicing the `advance` implementation in `Time`.
Added documentation for the :param option for resourceful routing
WIP: pass existing joins to construct_join_dependency
Merge pull request #15210 from arthurnn/fix_hbtm_reflection

Fix habtm reflection
Conflicts:
    activerecord/CHANGELOG.md
    activerecord/lib/active_record/counter_cache.rb
    activerecord/lib/active_record/reflection.rb
    activerecord/test/cases/reflection_test.rb
Use .to_s on _reflections lookup
Skip if the association was already loaded.
Always construct route objects with Constraint objects
push is_a?(Dispatcher) check in to one place
eliminate dispatcher is_a checks
Constraints#app should never return another Constraints object, so switch to if statement
Call get_routes_as_head only on HEAD requests.
one fewer is_a check
nothing is passed to `rack_app` anymore, so rm the params
pass a request to `matches?` so we can avoid creating excess requests
pass the request object to the application
Rename Posts to Articles in Guides' Getting Started App, continuation of #15215 [ci skip]
remove unwanted `to_sym` call.
correct doc for (audio|video)_tag [ci skip]
Escape user input before showing in the page.

This is not a security issue since this page is not present in
production and user have to type something in the field but is better to
escape the input.
Skip individual tests upon Dalli::RingError

Unlike the outer `rescue`, this one is much more precise about what we
want to handle: a connection failure (`Dalli::RingError`) is not
relevant to what we're testing here. But other Dalli errors may well be
indicating an actual problem.