goodbye has_and_belongs_to_many1, we will miss you!
repurpose the HABTM builder class
remove HABTM special cases from the fixtures
remove HABTM special cases from associations classes
remove the HABTM preloader
remove HABTM special cases from reflections
remove HABTM associations
add a note to the changelog
Merge branch 'master' into habtm

* master:
  copy-edits the new guide with our maintenance policy [ci skip]
remove some duplicate code
add missing require
preheat habtm column cache
fix the variable name
`intiantiated` => `instantiated` [ci-skip]
Merge pull request #12430 from vipulnsward/changelog_fix

`intiantiated` => `instantiated` [ci skip]
Fix a typo in the code of Testing guide.

Replace the word «Accepts» by «Accept» in the example of custom request headers.
Merge pull request #12431 from GRoguelon/master

Fix a typo in the code of Testing guide. [ci skip]
Merge pull request #8791 from griffinmyers/master

Updated DirtyModel's @changed_attributes hash to be symbol/string agnostic

Conflicts:
	activemodel/CHANGELOG.md
map the association chain to table names
Port test from cf1904f to avoid future regression

Related issue: #11939, #12084