[Form] Removed usage of the ChoiceList::getIndicesFor*() methods where they don't offer any performance benefit
[Form] Fixed ChoiceList::get*By*() methods to preserve order and array keys
[Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
[Form] Improved test coverage of ChoiceList classes
[DoctrineBridge] Improved test coverage of EntityChoiceList
merged branch bschussek/issue5113-2.2 (PR #8980)

This PR was merged into the 2.2 branch.

Discussion
----------

[2.2][Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted

Same as #7940, rebased onto 2.2.

Commits
-------

4d2dc55 [DoctrineBridge] Improved test coverage of EntityChoiceList
9d3628c [Form] Improved test coverage of ChoiceList classes
ed83752 [Form] Fixed expanded choice field to be marked invalid when unknown choices are submitted
30aa1de [Form] Fixed ChoiceList::get*By*() methods to preserve order and array keys
53f292a [Form] Removed usage of the ChoiceList::getIndicesFor*() methods where they don't offer any performance benefit