Fix AS::NumberHelper results with rationals

:precision was incorrectly being applied to Rationals

before:
  ActiveSupport::NumberHelper.number_to_rounded Rational(10, 3), precision: 2
  => "3.3"
after:
  ActiveSupport::NumberHelper.number_to_rounded Rational(10, 3), precision: 2
  => "3.33"
Update documentation to reflect unsubscription with name.
Avoid looping through subscribers when unsubscribing with a subscriber object.
docs, fix typo [ci skip]
Merge pull request #15464 from tgxworld/improve_notifications_logic

Improvements to ActiveSupport::Notifications.
Merge pull request #15379 from xuanxu/rational_precision

Fix AS::NumberHelper results with rationals
just use `assert`