Allow included modules to override association methods.

Closes #16684.

This is achieved by always generating `GeneratedAssociationMethods` when
`ActiveRecord::Base` is subclassed. When some of the included modules
of `ActiveRecord::Base` were reordered this behavior was broken as
`Core#initialize_generated_modules` was no longer called. Meaning that
the module was generated on first access.

Conflicts:
	activerecord/test/cases/attribute_methods/read_test.rb