Fixed `ActiveSupport::TimeWithZone#-` so precision is not unnecessarily lost

When working with objects with a nanosecond component, the `-` method may
unnecessarily cause loss of precision.

`ActiveSupport::TimeWithZone#-` should return the same result as if we were
using `Time#-`:

    Time.now.end_of_day - Time.now.beginning_of_day #=> 86399.999999999

Before:

    Time.zone.now.end_of_day.nsec #=> 999999999
    Time.zone.now.end_of_day - Time.zone.now.beginning_of_day #=> 86400.0

After:

    Time.zone.now.end_of_day - Time.zone.now.beginning_of_day
    #=> 86399.999999999
Removed CaptureHelper#flush_output_buffer as it is only used in tests.
reviewed: @tenderlove
Fix inverse associations test

`InverseHasManyTests#test_parent_instance_should_be_shared_within_create_block_of_new_child`
was mistakenly the same as
`InverseHasManyTests#test_parent_instance_should_be_shared_within_build_block_of_new_child`.
Merge pull request #15515 from leafac/fix-inverse-associations-block-test

Fix inverse associations test
Merge pull request #15518 from jonathancadepowers/master

Added Two Clarification "Tips" [ci skip]
Merge pull request #15421 from gchan/time_with_zone_precision

Fixed `ActiveSupport::TimeWithZone#-` so precision is not unnecessarily lost
Remove deprecated method ActiveRecord::Migrator.proper_table_name
Merge pull request #15512 from akshay-vishnoi/delete-deprecated-method

Remove deprecated method ActiveRecord::Migrator.proper_table_name
Fix behavior of handling BC era dates.

BC era year is (astronomical year + 1) and starts from 1 BC.
document include_blank's usage with a string [ci skip]
Avoid hardcoded value in test setup/teardown.
Merge pull request #15525 from zuhao/refactor_actionpack_query_string_parsing_test

Avoid hardcoded value in test setup/teardown.
Mime::PNG is already defined.
Merge pull request #15521 from edogawaconan/fix_bc_postgres_master

Fix BC year handling in postgres
Merge pull request #15529 from zuhao/refactor_actionpack_mime_type_test

Make sure Mime::Type is not altered after tests.
Reset callbacks after test.

Otherwise the state of callback chain is leaked.
Avoid hard-coded value in test setup/teardown.
Restore Response.default_headers after test.
Merge pull request #15531 from zuhao/refactor_actionpack_request_test

Avoid hard-coded value in test setup/teardown.
Merge pull request #15532 from zuhao/refactor_actionpack_response_test

Restore Response.default_headers after test.