Don't encourage usage of `columns_hash`

As discussed in https://github.com/plataformatec/simple_form/pull/1094,
we should not encourage usage of `columns_hash`, and instead provide an
alternate method to determine whether or not an attribute exists.

The language `attribute` was chosen over `column` since these are in the
`AttributeMethods` module.
Use the type object for sending JSON to the database
Add `Hash#map_values` to ActiveSupport

Didn't get a chance to convert existing code, I'll skim through the code
base to make use of this later this afternoon.
Merge pull request #15819 from sgrif/sg-hash-map-values

Add `Hash#map_values` to ActiveSupport to simplify a common pattern
Merge pull request #15979 from sgrif/sg-json-quoting

Use the type object for sending JSON to the database
Use `Hash#transform_values` to clean up `AttributeSet`
Merge pull request #15982 from sgrif/sg-attr-set-map-values

Use `Hash#transform_values` to clean up `AttributeSet`
Use the type object when sending point columns to the DB
Merge pull request #15976 from sgrif/sg-attribute-exists

Don't encourage usage of `columns_hash`
Merge pull request #15983 from sgrif/sg-inline-point

Use the type object when sending point columns to the DB
Remove unused `array_member` from PG quoting for HStore columns

Hstore no longer needs additional quoting to be used in an array, the
array type handles it sufficiently.