Pure rack apps can be mounted with a name

See https://github.com/rails/rails/commit/9b15828b5c347395b42066a588c88e5eb4e72279#commitcomment-8764492
Fix link in documentation. [ci skip]
Merge pull request #17848 from biow0lf/fix-link-in-action_view-base

Fix link in documentation. [ci skip]
Merge pull request #17823 from byroot/fix-mount-rack-apps-with-as

Pure rack apps can be mounted with a name
Stop using `Arel::Table.engine`

We never actually make use of it on the table, since we're constructing
the select manager manually. It looks like if we ever actually were
grabbing it from the table, we're grossly misusing it since it's meant
to vary by AR class.

Its existence on `Arel::Table` appears to be purely for convenience
methods that are never used outside of tests. However, in production
code it just complicates construction of the tables on the rails side,
and the plan is to remove it from `Arel::Table` entirely. I'm not
convinced it needs to live on `SelectManager`, etc either.
Use arel master
Update Arel usage for rails/arel#98fc259

`where_sql` now requires that we pass it an engine. None of the manager
classes take an engine in their constructor.
[ci skip] fix description of url_for
Merge pull request #17850 from y-yagi/patch-2

[ci skip] fix description of url_for
[Testing guide] Use "Fixtures API" instead of "fixture api".
[Testing guide] Using "Fixtures API" consistently

- In guides, "API" is used consistently instead of "api".
- Reason behind replacing "fixtures API" to "Fixtures API" is because
  here we are referring to the concept of "fixtures". In other places in
  the guide "fixture" OR "fixtures" is referred to the single or
  multiple instances of test data.
- This is also followup of https://github.com/rails/docrails/commit/aa9d1332b20305dd860b21a7ada06c5252bebad5#commitcomment-8497376.
Fix grammar on ActiveRecord::AttributeMethods doc.

[ci skip]