Coerce strings when reading attributes.
Introduce Concern#class_methods and Kernel#concern
Extract local cache middleware

Extract LocalCache Middleware, so it can requires rack dependencies,
without adding rack dependencies to `AS::Cache::Strategy::LocalCache`.
Group assets options in production env template
Merge pull request #14171 from arthurnn/extract_middleware_cache

Extract local cache middleware
Merge pull request #10497 from senny/10485_does_not_coerce_strings

coerce strings when reading attributes
include names in model generator warning message. refs #13515.

This is a follow up to #13515. It includes the name given and
the singularized version in the warning message. This will aide the user
to see wether the detected singular was right or not.
build fix. follow up to 174c9f0df39cd338a4871f82794256cc64f68a81
refactor, extract `with_locale` helper.
there could be more than 10 nested records

label helper object_name should cut more than 10 sub-elements
there could be more than 10 nested records (tested)
there could be more than 10 nested records (tested)
Merge branch 'master'