handle protocol option in stylesheet_link_tag and javascript_include_tag

closes #8388
Merge pull request #8389 from nashby/issue-8388

handle protocol option in stylesheet_link_tag and javascript_include_tag
Minor js review [ci skip]

Remove/add ; where necessary, fix indentation.
Added support for validates_uniqueness_of in PostgreSQL array columns. Fixes: #8075.
Refactor uniqueness validator logic a bit

Cleanup some code, avoid extra hash with reverse_merge, and don't use
send for :id, since it's always present.
Remove prepend_and_append requirement from AS

It's not necessary to use this extension here, we are fine with Array#unshift.
Avoid unnecessary hashes with error options
Simplify value logic by always typecasting
Change relation in place
Extract some methods
Merge branch 'uniqueness-validation-postgresql-arrays'

When setting an array column (or other PostgreSQL-specific data type)
to be validated for uniqueness, the resulting SQL query is generated with
syntax errors, like this:

    SELECT 1 AS one FROM "postgresql_arrays"
    WHERE "postgresql_arrays"."nicknames" = '["john", "johnny"]' LIMIT 1

This happens because Ruby Arrays must be type-casted to their PostgreSQL
equivalent. This small patch fixes this issue, calling the adapter's
type_cast method.

Closes #8077
Add app/models/concerns and app/controllers/concerns to the default directory structure and load path
Merge
Fix changelog
#5523 Add ability for postgresql adapter to disable user triggers in disable_referential_integrity.
Merge pull request #8548 from garysweaver/postgresql_fallback_to_disable_user_triggers

fix #5523: postgresql adapter to disable user triggers in disable_referential_integrity
Revert "Merge pull request #7587 from elia/fix-too-eager-loading"

This reverts commit 3663057518eb9acf9b1e72f47dcb07038e6b7368.

REASON: This caused a regression that add app folder in the eager load
path. See #8146 for more information.

Conflicts:
	railties/CHANGELOG.md
Revert "use File.basename to get the filename minus .yml"

This reverts commit 00c5342d96a3677c0a6a2bb8316c76182f5bdfdd.

Conflicts:
	activerecord/lib/active_record/fixtures.rb
Fix argument name in fixtures method

Relatedo to 8e44c93b4c0e4b1bdd0fca13b79f5be1088d6959.
fix railties CHANGELOG [ci skip]