Use inheritance chain instead of callbacks to increment counter caches after create
Use inheritance chain instead of callbacks to increment counter caches after destroy
Set _after_create_counter_called flag to make update counter cache work
Restore the destroy_by_association check in post destroy counter cache
Hide BelongsToAssociation#increment_counters and #decrement_counters
Add CHANGELOG entry for #14766 [ci skip]
Update AC::Metal documentation example [ci skip]

Include proper module since AV was extracted form AP as mentioned in #14659.
Changed the NullRelation so that when count is called with #group it will properly return an empty hash instead of zero. Fixes issue #14721