Added support for relation by array attributes

fixes #1249
added elasticsearch test case for array attribute relations
fixed issue with indexBy and array valued relations
Better fix for Dropdown container options

Better fix for #3443 that does not break BC and allows widget to be extensible.
Merge pull request #4393 from kartik-v/patch-1

Better fix for Dropdown container options
Doc translate for rest-resources
Merge pull request #4394 from MikeBazhenov/master

Doc translate for rest-resources
minor refactoring of FileValidator.
Fixes #3887
Fixes #4342
Merge branch 'master' of git://github.com/yiisoft/yii2 into 4342_mssql_driver_updates
Merge pull request #4401 from tof06/4342_mssql_driver_updates

4342 mssql driver updates
Fixes #4370: fileinfo extension is required for FileValidator.
Update output-data-widgets.md

fixed broken code block
add support for array valued attr relations to unlink and link
Update CHANGELOG.md
Merge branch 'master' into array-attribute-relations

* master:
  Update output-data-widgets.md
  Fixes #4370: fileinfo extension is required for FileValidator.
  Fixes #4342
  Fixes #3887
  minor refactoring of FileValidator.
  Doc translate for rest-resources
  Better fix for Dropdown container options
  #4388: CORS filter fixes:
  Fixed test break.
  #4310: Removed `$data` from signature of `yii\rbac\ManagerInterface`
  Update .travis.yml
  Update ActiveRecordInterface.php
  Fixes #4384.
  Sphinx distributed indexes support provided
  typo fix [skip ci]
  Fixes #3611: Refactored query caching.
Merge pull request #4380 from yiisoft/array-attribute-relations

Array attribute relations
fixed test break

how did that manage to pass before...?
Check availabilty field in BaseActiveRecord::populateRecord

check with Object::canSetProperty()

fixes #4305, close #4211